diff --git a/scene/resources/material.cpp b/scene/resources/material.cpp index abb3381c4ee4..2a72913515d2 100644 --- a/scene/resources/material.cpp +++ b/scene/resources/material.cpp @@ -773,6 +773,9 @@ void BaseMaterial3D::_update_shader() { if (!flags[FLAG_UV1_USE_TRIPLANAR]) { code += " UV=UV*uv1_scale.xy+uv1_offset.xy;\n"; + code += " if (determinant(mat3(WORLD_MATRIX)) < 0.0) {"; + code += " NORMAL = -NORMAL;"; + code += " }"; } switch (billboard_mode) {