So... I there has been changes to TEV since the problem with D3D and Intel HD was reported with build 4.0-1288. Unfortunately the glitches are still there, and I have noticed them so far in New Super Mario Bros (very apparent), Conkey Kong County Returns (VERY apparent), Mario Kart Wii (subtle sparkling, around the background trophy) and also in Super Mario Galaxy 1/2 (most apparent in level selection screen, the selection star seems to be glowing with glitchy light.
I was curious about the code and the commit that causes this, so I started compiling on my own. The culprit is commit 4f82d6f7aff107d3cb941df111250c66aa9f5ea8 (" PixelShaderGen: Implement tev combiner lerping in a faster way which also reproduces hardware behavior perfectly." by NeoBrain). I compiled version 1279, then cherry-picked fdad95c055ad5274e3a0b053558fd76b1766243b ("PixelShaderGen: Cleanups and fixes for tev combiners. ") which runs fine and with no glitches. Cherry-picking then the mentioned culprit-commit brings the glitches in.
I tried to fiddle around with newer builds with no success so far.
So...
- Has anyone got any idea, what could be so troublesome for Intel HD in the present code? (Rounding etc?), fo specific fix?
- I can (now) implement fixes to the code, and I'm willing to try them out. It's just that I suck with C++, so I don't
have much ideas on my own. Maybe a workaraound that would use the old code? This wouldn't be merged in master,
of course.
- Or is waiting for new Intel drivers the only way to go? Really??
I was curious about the code and the commit that causes this, so I started compiling on my own. The culprit is commit 4f82d6f7aff107d3cb941df111250c66aa9f5ea8 (" PixelShaderGen: Implement tev combiner lerping in a faster way which also reproduces hardware behavior perfectly." by NeoBrain). I compiled version 1279, then cherry-picked fdad95c055ad5274e3a0b053558fd76b1766243b ("PixelShaderGen: Cleanups and fixes for tev combiners. ") which runs fine and with no glitches. Cherry-picking then the mentioned culprit-commit brings the glitches in.
I tried to fiddle around with newer builds with no success so far.
So...
- Has anyone got any idea, what could be so troublesome for Intel HD in the present code? (Rounding etc?), fo specific fix?
- I can (now) implement fixes to the code, and I'm willing to try them out. It's just that I suck with C++, so I don't
have much ideas on my own. Maybe a workaraound that would use the old code? This wouldn't be merged in master,
of course.
- Or is waiting for new Intel drivers the only way to go? Really??
