Найти тему
Игровой движок Godot engine

№44. Ноды группы Control и блокировка клика.

Вообще , как уже упоминалось в одной из статей , группа нод Control предназначена для работы с пользовательским интерфеисом. Но так как новички месят всё в одну сцену и иерархию — происходит всякое разное непонятное.

И одно из этих непонятностей выглядит так : если в сцене присутствует нода из группы Control — начинается какая то чепуха с перехватом клика.

Возьмем для примера сцену с двумя кнопками. И положим поверх ноду Control так, чтобы она перекрыла только одну кнопку.

По нажатию на кнопку выведем текст в аутпут.

-2

Как видим — левая кнопка оказалась заблокирована.

Чтобы это обойти , надо открыть своиства ноды control и в разделе Mouse, переключить фильтр в Ignore

-3

Проверяем.

-4

Описание фильтров :(при условии что кнопка является родителем control ноды)

Stop — Прекращает любое взаимодеиствие с объектом ниже по иерархии
Pass — Отрабатывает клик одновременно. Т.е отработается два клика одновременно.
Ignore — Игнорируется полностью клик на ноду Control.

Ну и напоследок - чуть ниже смены фильтра, вы можете сменить иконку курсора при попадании его в зону ноды.

Подписывайтесь и успехов вам !