diff --git a/editor/scene/3d/node_3d_editor_plugin.cpp b/editor/scene/3d/node_3d_editor_plugin.cpp index 6d2f127511..3512210012 100644 --- a/editor/scene/3d/node_3d_editor_plugin.cpp +++ b/editor/scene/3d/node_3d_editor_plugin.cpp @@ -2317,7 +2317,7 @@ void Node3DEditorViewport::_sinput(const Ref &p_event) { if (m.is_valid() && !_edit.instant) { _edit.mouse_pos = m->get_position(); - if (spatial_editor->get_single_selected_node()) { + if (!freelook_active && spatial_editor->get_single_selected_node()) { Vector> gizmos = spatial_editor->get_single_selected_node()->get_gizmos(); Ref found_gizmo; @@ -2351,7 +2351,7 @@ void Node3DEditorViewport::_sinput(const Ref &p_event) { } } - if (transform_gizmo_visible && spatial_editor->get_current_hover_gizmo().is_null() && !m->get_button_mask().has_flag(MouseButtonMask::LEFT) && _edit.gizmo.is_null()) { + if (!freelook_active && transform_gizmo_visible && spatial_editor->get_current_hover_gizmo().is_null() && !m->get_button_mask().has_flag(MouseButtonMask::LEFT) && _edit.gizmo.is_null()) { _transform_gizmo_select(_edit.mouse_pos, true); }