Restore cursor trail exclusion in cursor region but without branching

This commit is contained in:
Kovid Goyal
2024-12-12 08:48:41 +05:30
parent 4b12bffcb1
commit 4839233676

View File

@@ -7,5 +7,11 @@ in vec2 frag_pos;
out vec4 final_color;
void main() {
final_color = vec4(trail_color, trail_opacity);
float opacity = trail_opacity;
// Dont render if fragment is within cursor area
float in_x = step(cursor_edge_x[0], frag_pos.x) * step(frag_pos.x, cursor_edge_x[1]);
opacity *= 1.0f - in_x;
float in_y = step(cursor_edge_y[0], frag_pos.y) * step(frag_pos.y, cursor_edge_y[1]);
opacity *= 1.0f - in_y;
final_color = vec4(trail_color, opacity);
}