浏览代码

Fix CSG gizmos only working on root shapes

(cherry picked from commit 60f3d1d36fc81ec23c88f5414c03ac17993432e9)
Eeli Reilin 3 年之前
父节点
当前提交
cf6d8a0f2b
共有 1 个文件被更改,包括 6 次插入8 次删除
  1. 6 8
      modules/csg/csg_gizmos.cpp

+ 6 - 8
modules/csg/csg_gizmos.cpp

@@ -377,14 +377,12 @@ void CSGShapeSpatialGizmoPlugin::redraw(EditorSpatialGizmo *p_gizmo) {
 	p_gizmo->add_lines(lines, material);
 	p_gizmo->add_collision_segments(lines);
 
-	Array csg_meshes = cs->get_meshes();
-	if (csg_meshes.size() != 2) {
-		return;
-	}
-
-	Ref<Mesh> csg_mesh = csg_meshes[1];
-	if (csg_mesh.is_valid()) {
-		p_gizmo->add_collision_triangles(csg_mesh->generate_triangle_mesh());
+	if (cs->is_root_shape()) {
+		Array csg_meshes = cs->get_meshes();
+		Ref<Mesh> csg_mesh = csg_meshes[1];
+		if (csg_mesh.is_valid()) {
+			p_gizmo->add_collision_triangles(csg_mesh->generate_triangle_mesh());
+		}
 	}
 
 	if (p_gizmo->is_selected()) {