2009/3/14 Stefan Dösinger stefan@codeweavers.com:
The if check isn't that correct either.
If MAX_COMBINED_SAMPLERS >= 8 + 3 everything's fine too. d3d9 only supports 8 fixed function frag samplers and 3 vertex samplers at max, so even if we can't use all GL samplers together, we're still fine if we have 11 samplers available for the purpose of this test. This should silence the frag=16, vertex=16, total=16 complaint on d3d10 cards
D3d9 supports 4 vertex samplers max, but that aside. In d3d10 this is not a problem either, because you don't have fixed function there.
On that subject, I think it would make sense to have some flags we can pass to WineDirect3DCreate() to allow us to make some assumptions about what the d3d client library will/won't do. Eg. WINED3D_NO_FIXED_FUNCTION in case of d3d10, or something like WINED3D_STATIC_VB_DECLARATION for ddraw. This would essentially replace the dxVersion field in IWineD3DImpl.