http://bugs.winehq.org/show_bug.cgi?id=10477
Matteo Bruni matteo.mystral@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |matteo.mystral@gmail.com
--- Comment #25 from Matteo Bruni matteo.mystral@gmail.com 2012-02-06 13:39:56 CST --- I've spent quite some time on this bug and I guess I found something interesting...
The 1.00 demo which was last linked here, with current video drivers, is broken on Windows too (both on Nvidia and AMD). The 1.02 demo version (which can be downloaded e.g. from http://games.softpedia.com/get/Games-Demo/Legacy-of-Kain-Soul-Reaver-2.shtml, beware it's about 650MB big) works fine on Windows AND on Wine instead. The patch notes cite "Fix for ATI Radeon 8500. Almost the entire screen used to be a single color" among the issues fixed by the update (http://www.fileplanet.com/81971/80000/fileinfo/Soul-Reaver-2-Patch-v1.02). My current hypothesis is that Nvidia, at some point, changed the fog behavior in their drivers to match ATI/AMD, specifically about what happens when the fog factor is outside of the 0.0-1.0 range, thus becoming affected by the same issue as the Radeon 8500.
So, I'd say this is not really a Wine bug and Wine behaves as it should. The only thing which needs to be fixed, in accordance with some tests I've done, is that the fog coordinate set from a vertex shader needs to be clamped. "Fixing" that makes the 1.00 demo constantly fogged: so it clearly doesn't help the demo, but it makes Wine accurately match fogging as for current Nvidia/AMD Windows drivers.
BTW, the fog in Prince of Persia: the Sands of Time is broken with current Nvidia drivers (Windows and Wine), but faking an AMD GPU on Wine makes the game use a different fog setup which works correctly. I guess that may be the same basic issue.