diff options
Diffstat (limited to 'src/GPU_OpenGL_shaders.h')
-rw-r--r-- | src/GPU_OpenGL_shaders.h | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/GPU_OpenGL_shaders.h b/src/GPU_OpenGL_shaders.h index 1ccbd43..b1460cd 100644 --- a/src/GPU_OpenGL_shaders.h +++ b/src/GPU_OpenGL_shaders.h @@ -82,8 +82,7 @@ void main() eva = (_3dpix.a & 0x1F) + 1; evb = 32 - eva; - val1 = ((_3dpix * eva) + (val1 * evb)) >> 5; - if (eva <= 16) val1 += ivec4(1,1,1,0); + val1 = ((_3dpix * eva) + (val1 * evb) + 0x10) >> 5; val1 = min(val1, 0x3F); } else @@ -103,7 +102,7 @@ void main() eva = val3.g; evb = val3.b; - val1 = ((val1 * eva) + (_3dpix * evb)) >> 4; + val1 = ((val1 * eva) + (_3dpix * evb) + 0x8) >> 4; val1 = min(val1, 0x3F); } else @@ -123,8 +122,8 @@ void main() evy = val3.g; val1 = _3dpix; - if (compmode == 2) val1 += ((ivec4(0x3F,0x3F,0x3F,0) - val1) * evy) >> 4; - else if (compmode == 3) val1 -= (val1 * evy) >> 4; + if (compmode == 2) val1 += (((0x3F - val1) * evy) + 0x8) >> 4; + else if (compmode == 3) val1 -= ((val1 * evy) + 0x7) >> 4; } else val1 = val2; @@ -142,7 +141,7 @@ void main() int evy = mbright.r & 0x1F; if (evy > 16) evy = 16; - pixel += ((ivec4(0x3F,0x3F,0x3F,0) - pixel) * evy) >> 4; + pixel += ((0x3F - pixel) * evy) >> 4; } else if (brightmode == 2) { @@ -150,7 +149,7 @@ void main() int evy = mbright.r & 0x1F; if (evy > 16) evy = 16; - pixel -= (pixel * evy) >> 4; + pixel -= ((pixel * evy) + 0xF) >> 4; } } |