Editor: Fix CSG gizmo selection inside CSGCombiners
This commit is contained in:
@@ -417,17 +417,14 @@ void CSGShape3DGizmoPlugin::redraw(EditorNode3DGizmo *p_gizmo) {
|
||||
Ref<Material> handles_material = get_material("handles");
|
||||
|
||||
p_gizmo->add_lines(lines, material);
|
||||
p_gizmo->add_collision_segments(lines);
|
||||
|
||||
if (cs->is_root_shape()) {
|
||||
Array csg_meshes = cs->get_meshes();
|
||||
if (csg_meshes.size() == 2) {
|
||||
Ref<Mesh> csg_mesh = csg_meshes[1];
|
||||
if (csg_mesh.is_valid()) {
|
||||
p_gizmo->add_collision_triangles(csg_mesh->generate_triangle_mesh());
|
||||
}
|
||||
}
|
||||
}
|
||||
Ref<ArrayMesh> collision_mesh;
|
||||
collision_mesh.instantiate();
|
||||
Array collision_array;
|
||||
collision_array.resize(Mesh::ARRAY_MAX);
|
||||
collision_array[Mesh::ARRAY_VERTEX] = faces;
|
||||
collision_mesh->add_surface_from_arrays(Mesh::PRIMITIVE_TRIANGLES, collision_array);
|
||||
p_gizmo->add_collision_triangles(collision_mesh->generate_triangle_mesh());
|
||||
|
||||
if (p_gizmo->is_selected()) {
|
||||
// Draw a translucent representation of the CSG node
|
||||
|
||||
Reference in New Issue
Block a user