From: Allen A. <ak...@po...> - 2002-10-21 21:39:28
|
Originally on the ARB general-discussion list: ----- Forwarded message from Christian Laforte <cla...@aw...> ----- From: "Christian Laforte" <cla...@aw...> Subject: Re: [opengl-participants] A simple extension for querying for hardware acceleration Date: Fri, 9 Mar 2001 13:49:26 -0500 I propose a very simple extension... something like: enum accStatus { software, hardware }; // Reset the acceleration status to hardware. void glResetAccelerationStatus(); // Get the acceleration status. accState glGetAccelerationStatus(); A user would use it like this: void testAccelerationOfFeatureX() { glResetAccelerationStatus(); gl... gl... gl... if (glGetAccelerationStatus() == software) { ... the driver eventually punted to software ... } else { ... the driver could run everything fully hw-accelerated... } } This wouldn't require much overhead on the driver side... since the only time the value of the accStatus would change would be when we punted to software, which is already slow anyway. It would be very easy to implement, and the app developpers could check for *exactly* what they need. I would expect that most drivers have a very limited numbers of entry points for their software fallback code, so it should be easy to implement. Christian Laforte cla...@aw... Alias|Wavefront, a division of SGI ----- Original Message ----- From: "Brian Paul" <br...@va...> Newsgroups: sgi.engr.opengl.arb Sent: Thursday, March 08, 2001 4:56 PM Subject: Re: [opengl-participants] OpenGL12 - lite > Bruce D'Amora wrote: > > > > What about adding an extension that querys what functions/extensions are > > supported in HW or SW? > > I think that would be very hard. Here's two concrete examples. Texture > borders often times aren't available in hardware. Or, particular texture > formats/texture env combinations might not be supported in hardware when > using two texture units, but are supported when using a single texture > unit. > > I don't know how you'd express these conditions. > > -Brian ----- End forwarded message ----- |