summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Goodliffe <dan@randomdan.homeip.net>2023-04-24 19:56:07 +0100
committerDan Goodliffe <dan@randomdan.homeip.net>2023-04-26 00:07:32 +0100
commit553f738d55e1492f11ee7f150758963344ac79d4 (patch)
treedc3e92551996c405453dba30664585dceea6b5cf
parentPoint shaders can all share the same implementation now in a single place (diff)
downloadilt-553f738d55e1492f11ee7f150758963344ac79d4.tar.bz2
ilt-553f738d55e1492f11ee7f150758963344ac79d4.tar.xz
ilt-553f738d55e1492f11ee7f150758963344ac79d4.zip
Point shaders (shadows) can all share the same implementation now in a single place
They all just get `model` from a different place
-rw-r--r--gfx/gl/shaders/commonShadowPoint.glsl6
-rw-r--r--gfx/gl/shaders/shadowDynamicPoint.vs7
-rw-r--r--gfx/gl/shaders/shadowDynamicPointInst.vs9
-rw-r--r--gfx/gl/shaders/shadowFixedPoint.vs8
4 files changed, 11 insertions, 19 deletions
diff --git a/gfx/gl/shaders/commonShadowPoint.glsl b/gfx/gl/shaders/commonShadowPoint.glsl
new file mode 100644
index 0000000..c7cbd3e
--- /dev/null
+++ b/gfx/gl/shaders/commonShadowPoint.glsl
@@ -0,0 +1,6 @@
+void
+main()
+{
+ gl_Position = viewProjection * model * vec4(position, 1.0);
+ gl_Position.z = max(gl_Position.z, -1);
+}
diff --git a/gfx/gl/shaders/shadowDynamicPoint.vs b/gfx/gl/shaders/shadowDynamicPoint.vs
index 531d8de..f3ed533 100644
--- a/gfx/gl/shaders/shadowDynamicPoint.vs
+++ b/gfx/gl/shaders/shadowDynamicPoint.vs
@@ -5,9 +5,4 @@ include(`meshIn.glsl')
uniform mat4 viewProjection;
uniform mat4 model;
-void
-main()
-{
- gl_Position = viewProjection * model * vec4(position, 1.0);
- gl_Position.z = max(gl_Position.z, -1);
-}
+include(`commonShadowPoint.glsl')
diff --git a/gfx/gl/shaders/shadowDynamicPointInst.vs b/gfx/gl/shaders/shadowDynamicPointInst.vs
index eb7313a..1bf74ef 100644
--- a/gfx/gl/shaders/shadowDynamicPointInst.vs
+++ b/gfx/gl/shaders/shadowDynamicPointInst.vs
@@ -1,13 +1,8 @@
#version 330 core
include(`meshIn.glsl')
-layout(location = 5) in mat4 model;
uniform mat4 viewProjection;
+layout(location = 5) in mat4 model;
-void
-main()
-{
- gl_Position = viewProjection * model * vec4(position, 1.0);
- gl_Position.z = max(gl_Position.z, -1);
-}
+include(`commonShadowPoint.glsl')
diff --git a/gfx/gl/shaders/shadowFixedPoint.vs b/gfx/gl/shaders/shadowFixedPoint.vs
index c9fa19b..8921707 100644
--- a/gfx/gl/shaders/shadowFixedPoint.vs
+++ b/gfx/gl/shaders/shadowFixedPoint.vs
@@ -3,10 +3,6 @@
include(`meshIn.glsl')
uniform mat4 viewProjection;
+const mat4 model = mat4(1);
-void
-main()
-{
- gl_Position = viewProjection * vec4(position, 1.0);
- gl_Position.z = max(gl_Position.z, -1);
-}
+include(`commonShadowPoint.glsl')