WineD3D: WineD3D: Use the shader backend to enable / disable atifs and nvts
stefan at codeweavers.com
Fri Apr 11 10:35:21 CDT 2008
Am Freitag, 11. April 2008 17:22:20 schrieb Chris Robinson:
> In all cases, it should pick one and stick with it through the life of the
> process, for both D3D shaders and D3D fixed-function. Don't use atifs if
> ARB is available, don't use GLSL if nv-supplimented ARB is available, etc.
There are three issues that lead to this discussion:
*) We may want to mix shader backends. GLSL is a pain on MacOS at least on the
vertex side, but it works okish on the fragment shader side. It may be
helpful to compile a ARB vertex shader and a GLSL pixel shader. Also an ARB
replacement may be faster there because the GLSL compiler on MacOS often
creates slow code.
*) We have an NVTS and ATIFS replacement now, but no ARB or GLSL fragment
processing code, and it would be cool if we can make use of the ATIFS code on
newer cards as well. NVTS currently works because it is included in the
baseshader/fixed function backend.
*) It's also about getting the design right in principle, and finding a design
that doesn't need an entire rework when dx10 and geometry shaders are
More information about the wine-devel