GSdx SVN r1272 is released.GSdx is a GPU plugin for PCSX2.
GSdx SVN r1272 Changelog:
GSdx: Even more alpha test voodoo magic, it must be nailed now!
And there is even an explanation.
The tfx functions calculate At * Af >> 7, which means modulating by 0x80 should
return At as the result.
With the evil floating point pixel shader however 0x80 translates to 128/255
(0.502), not exactly 0.5, modulation as At' * Af' * 2 (' means 0 - 1.0 range) is
not the same as with integers.
At' = Af' = 0.502
At' * Af' * 2 = 0.504
If the alpha test happens to be "not equal to 0x80", then abs(0.504 - 128/255) <
0.5/255 will just miss.
Solution is to re-scale those values to the integer range, do the calculations,
and then back to float again, but in the end it just simplifies down to At' *
Af' * 255/128, doh...
At * Af >> 7 => ((At' * 255) * (Af' * 255) / 128) / 255 => At' * Af' * 255/128
At' = Af' = 0.502
0.502 * 0.502 * 255/128 = 0.502 (w00t!)
Download: GSdx SVN r1272
Source:Here
0 Comments
Post a Comment