Add transformation matrix for normal vectors

This commit is contained in:
Hanno Braun 2024-11-04 20:44:27 +01:00
parent 95a2cb4c7d
commit cc156b43ab
2 changed files with 7 additions and 1 deletions

View File

@ -241,12 +241,17 @@ impl Renderer {
#[repr(C)] #[repr(C)]
pub struct Uniforms { pub struct Uniforms {
pub transform: Mat4, pub transform: Mat4,
pub transform_for_normals: Mat4,
} }
impl Default for Uniforms { impl Default for Uniforms {
fn default() -> Self { fn default() -> Self {
let transform = default_transform(); let transform = default_transform();
Self { transform } let transform_for_normals = transform.inverse().transpose();
Self {
transform,
transform_for_normals,
}
} }
} }

View File

@ -1,5 +1,6 @@
struct Uniforms { struct Uniforms {
transform: mat4x4<f32>, transform: mat4x4<f32>,
transform_for_normals: mat4x4<f32>,
}; };
@group(0) @binding(0) @group(0) @binding(0)