summaryrefslogtreecommitdiff
path: root/assets/shaders/pbr_textured.vert
diff options
context:
space:
mode:
Diffstat (limited to 'assets/shaders/pbr_textured.vert')
-rw-r--r--assets/shaders/pbr_textured.vert16
1 files changed, 9 insertions, 7 deletions
diff --git a/assets/shaders/pbr_textured.vert b/assets/shaders/pbr_textured.vert
index d0f8fd5..391cef3 100644
--- a/assets/shaders/pbr_textured.vert
+++ b/assets/shaders/pbr_textured.vert
@@ -5,12 +5,14 @@ layout(location = 0) in vec3 inPosition;
layout(location = 1) in vec3 inNormal;
layout(location = 2) in vec2 inTexCoords;
-// Uniforms
-uniform MVP_Matrices {
- mat4 model; // TODO: make model a push constant/raw uniform
+uniform Camera {
mat4 view;
mat4 proj;
-} mvp;
+} cam;
+
+uniform Model {
+ mat4 inner;
+} model;
// Outputs
layout(location = 0) out vec3 fragWorldPos;
@@ -18,9 +20,9 @@ layout(location = 1) out vec3 fragNormal;
layout(location = 2) out vec2 fragTexCoords;
void main() {
- fragWorldPos = vec3(mvp.model * vec4(inPosition, 1.0));
- fragNormal = mat3(transpose(inverse(mvp.model))) * inNormal; // world-space normal
+ fragWorldPos = vec3(model.inner * vec4(inPosition, 1.0));
+ fragNormal = mat3(transpose(inverse(model.inner))) * inNormal; // world-space normal
fragTexCoords = inTexCoords;
- gl_Position = mvp.proj * mvp.view * mvp.model * vec4(inPosition, 1.0);
+ gl_Position = cam.proj * cam.view * model.inner * vec4(inPosition, 1.0);
}