---CONTEXT--- http://dri.sourceforge.net/doc/dri_driver_features.phtml
The Voodoo3/Banshee driver reverts to software rendering under the following conditions:
- Setting GL_LIGHT_MODEL_COLOR_CONTROL to GL_SEPARATE_SPECULAR_COLOR. - Enabling line stippling or polygon stippling. - Enabling point smoothing or polygon smoothing. - Enabling line smoothing when line width is not 1.0. That is, antialiased lines are done in hardware only when the line width is 1.0. - Using 1-D or 3-D texture maps. - Using the GL_BLEND texture environment. - Using stencil operations. - Using the accumulation buffer. - Using glBlendEquation(GL_LOGIC_OP). - Using glDrawBuffer(GL_FRONT_AND_BACK). - Using glPolygonMode(face, GL_POINT) or glPolygonMode(face, GL_LINE). - Using point size attenuation (i.e. GL_DISTANCE_ATTENUATION_EXT). - Using glColorMask(r, g, b, a) when r!=g or g!=b. ---END-CONTEXT---
Both wined3d/directx.c and d3d8/directx.c have an IWineD3DImpl_CreateDevice that includes the following call:
glLightModeli(GL_LIGHT_MODEL_COLOR_CONTROL, GL_SEPARATE_SPECULAR_COLOR);
In effect this prevents WINE from using the Voodoo3 for 3D rendering. Not only does this make D3D games intolerably slow (forget measuring FPS - start measuring FPM or worse), the result for many operations is just plain wrong.
Commenting out the offending line makes it work much better (at least until it hits one of the other problems), but with a list of software fallbacks this large, and given that the Voodoo3 is over 5 years old now, there must be some question as to whether this is worth fixing. Is the response to people with this problem "just go pick up an old GeForce card for $30"?
Both wined3d/directx.c and d3d8/directx.c have an IWineD3DImpl_CreateDevice that includes the following call:
glLightModeli(GL_LIGHT_MODEL_COLOR_CONTROL,
GL_SEPARATE_SPECULAR_COLOR);
In effect this prevents WINE from using the Voodoo3 for 3D rendering. Not only does this make D3D games intolerably slow (forget measuring FPS - start measuring FPM or worse), the result for many operations is just plain wrong.
Commenting out the offending line makes it work much better (at least until it hits one of the other problems), but with a list of software fallbacks this large, and given that the Voodoo3 is over 5 years old now, there must be some question as to whether this is worth fixing. Is the response to people with this problem "just go pick up an old GeForce card for $30"?
Hi,
Commenting this line is not a solution. D3D8 default behavior have this mode enabled. what we can do is to disable it on older hardware (when we be able to have a proper hardware detection)
Regards, Raphael
On Tue, 8 Mar 2005 10:44, Raphael wrote:
Commenting this line is not a solution. D3D8 default behavior have this mode enabled. what we can do is to disable it on older hardware (when we be able to have a proper hardware detection)
I wasn't suggesting that was the right way to fix it, just noting that it did in fact did fix it, which is useful information in that it confirms this is the problem for that hardware.
Given the age of the hardware I didn't plan to get into finding the correct fix, since the hack works for the time being to allow me to debug other problems and I haven't heard of anybody else complaining about D3D on Voodoo3 and Banshee cards.
Troy Rollo wrote:
Given the age of the hardware I didn't plan to get into finding the correct fix, since the hack works for the time being to allow me to debug other problems and I haven't heard of anybody else complaining about D3D on Voodoo3 and Banshee cards.
Oh, I would have complained, but I just upgraded to a geforce instead. :)
--Adam