diff --git a/scene/main/viewport.cpp b/scene/main/viewport.cpp index 3a4fe9a059588..9472c75273823 100644 --- a/scene/main/viewport.cpp +++ b/scene/main/viewport.cpp @@ -819,6 +819,9 @@ void Viewport::_process_picking() { sorter.sort(res, rc); } for (int i = 0; i < rc; i++) { + if (is_input_handled()) { + break; + } if (res[i].collider_id.is_valid() && res[i].collider) { CollisionObject2D *co = Object::cast_to(res[i].collider); if (co && co->can_process()) {