all repos — mgba @ 59bd7d5ace3be985f75a8e3dc378900db8b6270e

mGBA Game Boy Advance Emulator

Shaders: Fix frontlight bleed on AGS-001
Jeffrey Pfau jeffrey@endrift.com
Sun, 01 Nov 2015 19:42:47 -0800
commit

59bd7d5ace3be985f75a8e3dc378900db8b6270e

parent

782f6191e51b16211d1f783d0ae61aac722c54d3

1 files changed, 5 insertions(+), 5 deletions(-)

jump to
M res/shaders/ags001.shader/ags001.fsres/shaders/ags001.shader/ags001.fs

@@ -13,13 +13,13 @@ arrayY[0] = vec3(1.0, 1.0, 1.0);

arrayY[1] = vec3(1.0, 1.0, 1.0); arrayY[2] = vec3(1.0, 1.0, 1.0); arrayY[3] = vec3(0.8, 0.8, 0.8); - vec3 bleed = vec3(0.7, 0.7, 0.7); - vec2 radius = (texCoord.st - vec2(0.5, 0.5)) * vec2(1.5, 1.5); - bleed += (pow(dot(radius, radius), 3.0) + vec3(0.06, 0.1, 0.2)) * vec3(0.8, 0.88, 1.2); - color.rgb = pow(color.rgb + vec3(0.1, 0.12, 0.2), vec3(1.6, 1.6, 1.6)) * bleed; + vec3 bleed = vec3(0.12, 0.14, 0.19); + vec2 radius = (texCoord.st - vec2(0.5, 0.5)) * vec2(2.0, 2.0); + bleed += (dot(pow(radius, vec2(4.0)), pow(radius, vec2(4.0))) + vec3(0.06, 0.1, 0.2)) * vec3(0.18, 0.2, 0.32); + color.rgb = pow(color.rgb + vec3(0.1, 0.12, 0.2), vec3(1.6, 1.6, 1.6)); color.rgb *= arrayX[int(mod(texCoord.s * 960.0, 4.0))]; color.rgb *= arrayY[int(mod(texCoord.t * 640.0, 4.0))]; - color.rgb += vec3(0.16, 0.18, 0.22); + color.rgb += bleed; color.a = 0.5; gl_FragColor = color; }