VideoCommon: Properly upscale the mantissa of some fog params.
Might fix games with minor gfx glitches, try e.g. Super Mario Sunshine or Super Mario Galaxy 2. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6319 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
6edb5f4847
commit
f7d1184d87
|
@ -650,7 +650,7 @@ union FogParam0
|
|||
|
||||
float GetA() {
|
||||
union { u32 i; float f; } dummy;
|
||||
dummy.i = ((u32)sign<<31)|((u32)exponent<<23)|((u32)mantissa<<12);
|
||||
dummy.i = ((u32)sign<<31)|((u32)exponent<<23)|((u32)mantissa * 0x7FFFFF / 0x7FF); // scale mantissa from 11 to 23 bits
|
||||
return dummy.f;
|
||||
}
|
||||
|
||||
|
@ -671,7 +671,7 @@ union FogParam3
|
|||
// amount to subtract from eyespacez after range adjustment
|
||||
float GetC() {
|
||||
union { u32 i; float f; } dummy;
|
||||
dummy.i = ((u32)c_sign << 31) | ((u32)c_exp << 23) | ((u32)c_mant << 12);
|
||||
dummy.i = ((u32)c_sign << 31) | ((u32)c_exp << 23) | ((u32)c_mant * 0x7FFFFF / 0x7FF); // scale mantissa from 11 to 23 bits
|
||||
return dummy.f;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue