On 11/04/2008, Stefan Dösinger stefan@codeweavers.com wrote:
Not really, many games check the MaxSimultaneousTextures cap and use that value even if they are using pixel shaders. E.g. HL2 fails in dxlevel 81 with that with ARB shaders because it checks that cap if it finds SM 1.x, and Age of Empires 3 fails as well. Call of duty 4 is another popular example, it requires 8 fixed function textures. (COD4 wants TSSARGTEMP as well, so that point is moot)
Sure, but they don't generally break if you just return 8 there. (Compared to eg. HL2/CSS in dxlevel70 without D3DTA_SPECULAR). Of course the proper way to get around all of the issues at the same time would be to write a real GLSL fixed function fragment processing implementation, but that doesn't change the fact that the current situation is pretty ugly.