r500/verbatim/palette_fractal_main.fs.glsl
2025-11-13 10:56:28 -06:00

34 lines
698 B
GLSL

void main()
{
vec2 uv = uv0; // temp[1]
vec4 final_color = vec4(0, 0, 0, 1);
for (float i = 0.0; i < 4.0; i++) {
uv = uv * vec2(1.5, 1.5); // 60
uv = fract(uv);
uv = uv - vec2(0.5, 0.5); // 48
float l = length_(uv0);
float d = i * 0.4 + l; // const[0].a
d = time * 0.4 + d; // const[0].a
vec3 col = palette(d);
d = exp2(-l);
l = length_(uv);
d = l * d;
d = d * 8.0 + time; // 80
d = 0.125 * sin_(d); // omod
d = 1.0 / abs(d);
d = 0.01 * d; // const[0].b
d = pow_(d, 1.2); // const[0].g
final_color.xyz = col * vec3(d, d, d) + final_color.xyz;
}
gl_FragColor = final_color;
}