Explorar o código

Fixed PlaneMesh tangents for 'Face X' orientation

(cherry picked from commit 6099d9f3d10f672176d638be96f76906a58f0a74)
stoofin hai 1 ano
pai
achega
73b0984764
Modificáronse 1 ficheiros con 5 adicións e 1 borrados
  1. 5 1
      scene/resources/primitive_meshes.cpp

+ 5 - 1
scene/resources/primitive_meshes.cpp

@@ -1301,7 +1301,11 @@ void PlaneMesh::_create_mesh_array(Array &p_arr) const {
 				points.push_back(Vector3(-x, z, 0.0) + center_offset);
 			}
 			normals.push_back(normal);
-			ADD_TANGENT(1.0, 0.0, 0.0, 1.0);
+			if (orientation == FACE_X) {
+				ADD_TANGENT(0.0, 0.0, -1.0, 1.0);
+			} else {
+				ADD_TANGENT(1.0, 0.0, 0.0, 1.0);
+			}
 			uvs.push_back(Vector2(1.0 - u, 1.0 - v)); /* 1.0 - uv to match orientation with Quad */
 			point++;