First pass implementing exponentially fading lighting

This commit is contained in:
2021-02-22 13:45:59 +01:00
parent c75cda639b
commit e855d303e8
10 changed files with 117 additions and 49 deletions
+17 -5
View File
@@ -1,6 +1,6 @@
#version 430 core
layout (points) in;
layout (triangle_strip, max_vertices = 4) out;
layout (triangle_strip, max_vertices = 10) out;
in vec4 vBackPoss[];
uniform vec2 lightPos;
@@ -12,13 +12,25 @@ void main()
vec2 posc = vBackPoss[0].xy;
vec2 posd = vBackPoss[0].zw;
gl_Position = vec4 (posa, -1 , 1);
gl_Position = vec4 (posa, 0 , 1);
EmitVertex();
gl_Position = vec4 (posb, -1 , 1);
gl_Position = vec4 (posa + (200 * (posa - lightPos)), 0 , 1);
EmitVertex();
gl_Position = vec4 (posc, -1 , 1);
gl_Position = vec4 (posb, 0 , 1);
EmitVertex();
gl_Position = vec4 (posd, -1 , 1);
gl_Position = vec4 (posb + (200 * (posb - lightPos)), 0 , 1);
EmitVertex();
gl_Position = vec4 (posb + (200 * (posb - lightPos)), 0 , 1);
EmitVertex();
gl_Position = vec4 (posd, 0 , 1);
EmitVertex();
gl_Position = vec4 (posd, 0 , 1);
EmitVertex();
gl_Position = vec4 (posd + (200 * (posd - lightPos)), 0 , 1);
EmitVertex();
gl_Position = vec4 (posc, 0 , 1);
EmitVertex();
gl_Position = vec4 (posc + (200 * (posc - lightPos)), 0 , 1);
EmitVertex();
EndPrimitive();