summaryrefslogtreecommitdiff
path: root/scene
diff options
context:
space:
mode:
authorDuarte David <duartercorreia@hotmail.com>2021-09-23 21:04:57 +0100
committerDuarte David <duartercorreia@hotmail.com>2021-09-28 00:09:39 +0100
commit7d53755ca70069602741761da46164e121cc1533 (patch)
tree7c4022f91e3d786d45415d56da88bb7cbfca790d /scene
parent8abd46096ae52025d54bf58a782a6c057b3254f6 (diff)
Fixes the normals of SphereMesh when the radius is different from 1
Diffstat (limited to 'scene')
-rw-r--r--scene/resources/primitive_meshes.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/scene/resources/primitive_meshes.cpp b/scene/resources/primitive_meshes.cpp
index 25eb701596..f8be00f5fb 100644
--- a/scene/resources/primitive_meshes.cpp
+++ b/scene/resources/primitive_meshes.cpp
@@ -1466,7 +1466,7 @@ void SphereMesh::_create_mesh_array(Array &p_arr) const {
} else {
Vector3 p = Vector3(x * radius * w, y, z * radius * w);
points.push_back(p);
- Vector3 normal = Vector3(x * radius * w * scale, y / scale, z * radius * w * scale);
+ Vector3 normal = Vector3(x * w * scale, radius * (y / scale), z * w * scale);
normals.push_back(normal.normalized());
};
ADD_TANGENT(z, 0.0, -x, 1.0)