diff --git a/Assets/UniGLTF/Runtime/MeshUtility/BoneNormalizer.cs b/Assets/UniGLTF/Runtime/MeshUtility/BoneNormalizer.cs index 5ab40f94c..830037fe7 100644 --- a/Assets/UniGLTF/Runtime/MeshUtility/BoneNormalizer.cs +++ b/Assets/UniGLTF/Runtime/MeshUtility/BoneNormalizer.cs @@ -370,7 +370,7 @@ namespace UniGLTF.MeshUtility } else { - normals[j] = m.MultiplyVector(normals[j]) - meshNormals[j]; + normals[j] = m.MultiplyVector(normals[j].normalized) - meshNormals[j]; } } diff --git a/Assets/UniGLTF/Runtime/MeshUtility/MeshExtensions.cs b/Assets/UniGLTF/Runtime/MeshUtility/MeshExtensions.cs index 253906fc8..a7377bbb5 100644 --- a/Assets/UniGLTF/Runtime/MeshUtility/MeshExtensions.cs +++ b/Assets/UniGLTF/Runtime/MeshUtility/MeshExtensions.cs @@ -70,7 +70,7 @@ namespace UniGLTF.MeshUtility src.vertices = src.vertices.Select(x => m.MultiplyPoint(x)).ToArray(); if (src.normals != null && src.normals.Length > 0) { - src.normals = src.normals.Select(x => m.MultiplyVector(x)).ToArray(); + src.normals = src.normals.Select(x => m.MultiplyVector(x.normalized)).ToArray(); } if (src.tangents != null && src.tangents.Length > 0) {