http://bugs.winehq.org/show_bug.cgi?id=20053
--- Comment #17 from Nephyrin zey Nephyrin@nephyrin.net 2010-01-04 12:10:05 --- (In reply to comment #16)
1 . To reply to byteframe : could you explain to me why a older driver is better than a newer ?
- To reply to Nephyrin zey : I compiled wine 1.1.35 with the hack. then TF2
seems to run fine (with UI) in dxlevel 90 mode. (around 25-30 fps with screen :1920*1200). Could you explain why this hack is not include directly in wine ?
As far as I understand it: Drivers up to 180.60 returned INF on divide by zero in shaders. Newer ones return NaN, which directx does not expect, causing issues. This hack changes the particular offending shader path to check for div by zero and make sure it generates INF. It does not fix the problem in general, just masks it, hence, a hack.
I'm not sure what the proper way to fix this would be, my guess is it would require going through and ensuring ambiguous divide by zeros dont occur in all directx -> glsl situations, but how feasible that is is beyond me. Henri would probably be the one to decide how to go about properly remedying it, if at all.