Files
tbd-station-14/Resources/Textures/Shaders/radial_blur.swsl
2025-06-17 23:05:12 +02:00

17 lines
602 B
Plaintext

uniform sampler2D SCREEN_TEXTURE;
uniform highp float Strength;
const highp int SampleCount = 10; // a higher number makes the shader look better, but has a big performance impact
// a simple radial blur
void fragment() {
highp vec3 col = texture(SCREEN_TEXTURE, UV).xyz;
highp vec4 color = zTexture(UV);
highp vec2 direction = vec2(0.5, 0.5) - UV;
for (int i=1; i <= SampleCount; i++)
{
col += zTextureSpec(SCREEN_TEXTURE, UV + float(i) * Strength / float(SampleCount) * direction).xyz;
}
col = col / float(SampleCount);
COLOR = vec4(vec3(col), color.a);
}