From efca7f77025493bcf43865b64141cf0d8ae15537 Mon Sep 17 00:00:00 2001 From: marmottchen <71234931+marmottchen@users.noreply.github.com> Date: Tue, 15 Oct 2024 21:45:55 +0200 Subject: [PATCH] Optimised line intersection by adding two simple prechecks. --- src/pygame_light2d/fragment_light.glsl | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/pygame_light2d/fragment_light.glsl b/src/pygame_light2d/fragment_light.glsl index 7ed1aa5..fdc125f 100644 --- a/src/pygame_light2d/fragment_light.glsl +++ b/src/pygame_light2d/fragment_light.glsl @@ -29,6 +29,24 @@ vec2 uv_to_world(vec2 v){ } bool isOcluded(vec2 p,vec2 q){ + float x1 = min(p.x, q.x); + float w1 = abs(p.x - q.x); + float x2 = min(fragmentTexCoord.x, lightPos.x); + float w2 = abs(fragmentTexCoord.x - lightPos.x); + + if(x1+w1