diff --git a/experiments/2024-10-30/src/render.rs b/experiments/2024-10-30/src/render.rs index c36b07ef5..749f4f394 100644 --- a/experiments/2024-10-30/src/render.rs +++ b/experiments/2024-10-30/src/render.rs @@ -241,12 +241,17 @@ impl Renderer { #[repr(C)] pub struct Uniforms { pub transform: Mat4, + pub transform_for_normals: Mat4, } impl Default for Uniforms { fn default() -> Self { let transform = default_transform(); - Self { transform } + let transform_for_normals = transform.inverse().transpose(); + Self { + transform, + transform_for_normals, + } } } diff --git a/experiments/2024-10-30/src/shader.wgsl b/experiments/2024-10-30/src/shader.wgsl index 7179e90e0..cd80cc789 100644 --- a/experiments/2024-10-30/src/shader.wgsl +++ b/experiments/2024-10-30/src/shader.wgsl @@ -1,5 +1,6 @@ struct Uniforms { transform: mat4x4, + transform_for_normals: mat4x4, }; @group(0) @binding(0)