diff options
author | Dan Goodliffe <dan@randomdan.homeip.net> | 2023-04-24 19:56:07 +0100 |
---|---|---|
committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2023-04-26 00:07:32 +0100 |
commit | ac0e30371f3cbddde990179711997acac507a09c (patch) | |
tree | 33f1ce222a09eda06c2640a4b3f52519a100b1d6 | |
parent | Fudge RV bogey position the same as we do the body in test-render (diff) | |
download | ilt-ac0e30371f3cbddde990179711997acac507a09c.tar.bz2 ilt-ac0e30371f3cbddde990179711997acac507a09c.tar.xz ilt-ac0e30371f3cbddde990179711997acac507a09c.zip |
Point shaders 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/commonPoint.glsl | 13 | ||||
-rw-r--r-- | gfx/gl/shaders/dynamicPoint.vs | 14 | ||||
-rw-r--r-- | gfx/gl/shaders/dynamicPointInst.vs | 16 | ||||
-rw-r--r-- | gfx/gl/shaders/fixedPoint.vs | 13 |
4 files changed, 18 insertions, 38 deletions
diff --git a/gfx/gl/shaders/commonPoint.glsl b/gfx/gl/shaders/commonPoint.glsl new file mode 100644 index 0000000..ecf5fc9 --- /dev/null +++ b/gfx/gl/shaders/commonPoint.glsl @@ -0,0 +1,13 @@ +void +main() +{ + vec4 worldPos = model * vec4(position, 1.0); + + FragPos = worldPos.xyz; + TexCoords = texCoord; + Normal = (model * vec4(normal, 0.0)).xyz; + Colour = colour; + Material = material; + + gl_Position = viewProjection * worldPos; +} diff --git a/gfx/gl/shaders/dynamicPoint.vs b/gfx/gl/shaders/dynamicPoint.vs index e1701ed..ffa8275 100644 --- a/gfx/gl/shaders/dynamicPoint.vs +++ b/gfx/gl/shaders/dynamicPoint.vs @@ -6,16 +6,4 @@ include(`materialInterface.glsl') uniform mat4 viewProjection; uniform mat4 model; -void -main() -{ - vec4 worldPos = model * vec4(position, 1.0); - - FragPos = worldPos.xyz; - TexCoords = texCoord; - Normal = (model * vec4(normal, 0.0)).xyz; - Colour = colour; - Material = material; - - gl_Position = viewProjection * worldPos; -} +include(`commonPoint.glsl') diff --git a/gfx/gl/shaders/dynamicPointInst.vs b/gfx/gl/shaders/dynamicPointInst.vs index 1c66979..e4c8526 100644 --- a/gfx/gl/shaders/dynamicPointInst.vs +++ b/gfx/gl/shaders/dynamicPointInst.vs @@ -1,21 +1,9 @@ #version 330 core include(`meshIn.glsl') -layout(location = 5) in mat4 model; include(`materialInterface.glsl') uniform mat4 viewProjection; +layout(location = 5) in mat4 model; -void -main() -{ - vec4 worldPos = model * vec4(position, 1.0); - - FragPos = worldPos.xyz; - TexCoords = texCoord; - Normal = (model * vec4(normal, 0.0)).xyz; - Colour = colour; - Material = material; - - gl_Position = viewProjection * worldPos; -} +include(`commonPoint.glsl') diff --git a/gfx/gl/shaders/fixedPoint.vs b/gfx/gl/shaders/fixedPoint.vs index 0cc8153..6f517ca 100644 --- a/gfx/gl/shaders/fixedPoint.vs +++ b/gfx/gl/shaders/fixedPoint.vs @@ -4,15 +4,6 @@ include(`meshIn.glsl') include(`materialInterface.glsl') uniform mat4 viewProjection; +const mat4 model = mat4(1); -void -main() -{ - FragPos = position; - TexCoords = texCoord; - Normal = normal; - Colour = colour; - Material = material; - - gl_Position = viewProjection * vec4(position, 1.0); -} +include(`commonPoint.glsl') |