summaryrefslogtreecommitdiff
path: root/gfx/gl/shaders/commonShadowPoint.geom
diff options
context:
space:
mode:
authorDan Goodliffe <dan@randomdan.homeip.net>2026-03-10 21:52:38 +0000
committerDan Goodliffe <dan@randomdan.homeip.net>2026-03-10 21:52:38 +0000
commit5126582accd4af607184946200f5a937ff8d6b69 (patch)
tree4418890fee58c4ae2a7ada8e41bdfa46df897157 /gfx/gl/shaders/commonShadowPoint.geom
parentRefactor glMappedBufferWriter into a DSA wrapper for std::span (diff)
downloadilt-5126582accd4af607184946200f5a937ff8d6b69.tar.bz2
ilt-5126582accd4af607184946200f5a937ff8d6b69.tar.xz
ilt-5126582accd4af607184946200f5a937ff8d6b69.zip
Replace hacky m4 shader preprocessing with proper glslang version
Diffstat (limited to 'gfx/gl/shaders/commonShadowPoint.geom')
-rw-r--r--gfx/gl/shaders/commonShadowPoint.geom30
1 files changed, 3 insertions, 27 deletions
diff --git a/gfx/gl/shaders/commonShadowPoint.geom b/gfx/gl/shaders/commonShadowPoint.geom
index a515d97..519dc62 100644
--- a/gfx/gl/shaders/commonShadowPoint.geom
+++ b/gfx/gl/shaders/commonShadowPoint.geom
@@ -1,28 +1,4 @@
-#version 460 core
+#version 460
+#extension GL_ARB_shading_language_include : enable
-ifdef(`TEXTURES', include(`materialDetail.glsl'))
-
-uniform mat4 viewProjection[4];
-uniform int viewProjections;
-in vec4 vworldPos[];
-layout(triangles) in;
-layout(triangle_strip, max_vertices = 12) out;
-
-ifdef(`TEXTURES', in vec2 TexCoords[]; out vec2 texCoord;)
-ifdef(`TEXTURES', flat in MaterialDetail Material[]; flat out MaterialDetail material;)
-
-void
-main()
-{
- for (int vp = 0; vp < viewProjections; ++vp) {
- for (int v = 0; v < vworldPos.length(); ++v) {
- gl_Position = viewProjection[vp] * vworldPos[v];
- gl_Position.z = max(gl_Position.z, -1);
- gl_Layer = vp;
- ifdef(`TEXTURES', texCoord = TexCoords[v];)
- ifdef(`TEXTURES', material = Material[v];)
- EmitVertex();
- }
- EndPrimitive();
- }
-}
+#include "commonShadowPoint-geom.glsl"