SuperTuxKart 1.5 upstream source (from official release tarball)
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
uniform sampler2D displacement_tex;
|
||||
uniform sampler2D mask_tex;
|
||||
uniform sampler2D color_tex;
|
||||
uniform sampler2D ssr_tex;
|
||||
|
||||
#stk_include "utils/displace_utils.frag"
|
||||
#stk_include "utils/sp_texture_sampling.frag"
|
||||
|
||||
uniform vec4 direction;
|
||||
uniform int u_ssr;
|
||||
|
||||
in vec2 uv;
|
||||
|
||||
out vec4 o_diffuse_color;
|
||||
|
||||
void main()
|
||||
{
|
||||
float horiz = texture(displacement_tex, uv + direction.xy * 150.).x;
|
||||
float vert = texture(displacement_tex, (uv.yx + direction.zw * 150.) * vec2(0.9)).x;
|
||||
vec2 shift = getDisplaceShift(horiz, vert);
|
||||
shift *= 0.02;
|
||||
|
||||
vec2 tc = gl_FragCoord.xy / u_screen;
|
||||
float mask = texture(mask_tex, tc + shift).x;
|
||||
tc += (mask < 1.) ? vec2(0.) : shift;
|
||||
|
||||
vec4 blend_tex = sampleTextureLayer0(uv);
|
||||
vec3 col = blend_tex.rgb * blend_tex.a;
|
||||
if (u_ssr == 1)
|
||||
{
|
||||
col.rgb *= 0.7;
|
||||
col.rgb += texture(ssr_tex, tc).rgb * blend_tex.a * 0.3;
|
||||
}
|
||||
col.rgb += (1. - blend_tex.a) * texture(color_tex, tc).rgb;
|
||||
o_diffuse_color = vec4(col.rgb, 1.);
|
||||
}
|
||||
Reference in New Issue
Block a user