http://bugs.winehq.org/show_bug.cgi?id=10423
Summary: shader_glsl_lit() glitch Product: Wine Version: CVS/GIT Platform: All OS/Version: Linux Status: UNCONFIRMED Severity: major Priority: P2 Component: wine-directx-d3d AssignedTo: wine-bugs@winehq.org ReportedBy: chris@chris-wilson.co.uk
Created an attachment (id=9117) --> (http://bugs.winehq.org/attachment.cgi?id=9117) Restore the src.x>0 conditional
Some objects in Civ4 (and other games) are rendered incorrectly as a solid colour (using the nvidia 100.14.19 driver). A git bisection identified commit 468309e055b5e14f6da919b173eb199954b65ef1 Author: Stefan Dösinger stefan@codeweavers.com Date: Sun Oct 28 21:21:24 2007 +0100
wined3d: Get rid of the conditionals in the glsl lit implementation.
as the first bad commit. Applying the reverted patch to head confirms that it is the same issue. Reading the patch it would appear to be an incorrect transformation if the GLSL specification of pow() defines 0^0 as 1 (my edition of the orange book does not specify its behavior).