Skip to content

Commit

Permalink
Fix skinned mesh normal handling in mesh shader (#5095)
Browse files Browse the repository at this point in the history
# Objective

Update pbr mesh shader to use correct normals for skinned meshes.

## Solution

Only use `mesh_normal_local_to_world` for normals if `SKINNED` is not defined.
  • Loading branch information
edwardvear committed Jun 25, 2022
1 parent ad88bda commit 5a3e777
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion crates/bevy_pbr/src/render/mesh.wgsl
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,9 @@ fn vertex(vertex: Vertex) -> VertexOutput {
out.world_normal = skin_normals(model, vertex.normal);
#else
var model = mesh.model;
out.world_normal = mesh_normal_local_to_world(vertex.normal);
#endif
out.world_position = mesh_position_local_to_world(model, vec4<f32>(vertex.position, 1.0));
out.world_normal = mesh_normal_local_to_world(vertex.normal);
out.uv = vertex.uv;
#ifdef VERTEX_TANGENTS
out.world_tangent = mesh_tangent_local_to_world(model, vertex.tangent);
Expand Down

0 comments on commit 5a3e777

Please sign in to comment.