From: Brian P. <br...@va...> - 2001-06-03 17:42:42
|
Dave Morse wrote: > > I'd like to discriminate between 100% software mesa, and the various > hardware accellerated versions. My plan is (vaugely) to use GL_VENDOR and > GL_RENDERER strings. I've seen: > > Stock RH6.2, software: > GL_VENDOR "Brian Paul" > GL_RENDERER "Mesa X11" > > Stale DRI: > GL_VENDOR "VA Linux Systems, Inc." > GL_RENDERER "Mesa DRI VoodooBanshee 20000821" > > Debian Potato, software (iirc): > GL_VENDOR "Brian Paul" > GL_RENDERER "Mesa Indirect" (+- a few chars) > > So "Mesa" leading GL_RENDERER doesn't imply all software. But it seems > that the vendor "Brian Paul" only "sells" pure software implementations? > > Maybe someone with more datapoints could straighten me out on how to test > for pure software? The first and last cases are pure software rendering. The first is "stand-alone" Mesa and the last is the OpenGL renderer built into the XFree86 X server. > Why do I want to do this? > > Well, there are two operations that seem fine on hardware that turn out to > be slow with mesa: > > Drawing 300x200 alpha blended clouds. (substitute GL_ALPHA_TEST > 0.5) > Drawing a 640x480 smooth shaded polygon. (substitute glClear) This has been discussed dozens of times over the years but here's the key thing to remember: the question isn't "will this OpenGL operation be rendered with software or hardware" but "will this OpenGL operation be at least a certain speed". Consider using an old Voodoo1 card with a fast CPU: i's possible for software rendering to be faster. A well-written application will execute some OpenGL commands and measure their speed to determine the best way to render something. -Brian |