Настройка видимости
Visible if — это функция, которая позволяет автоматически показывать или скрывать объект на экране в зависимости от заданных условий.
Это удобно, когда нужно управлять отображением элементов без ручного включения или выключения.
Условия видимости можно настраивать:
- на основе состояния других объектов на сцене
- на основе значений из dh-путей
Кроме того, вы можете:
- подписываться сразу на несколько объектов
- подписываться сразу на несколько dh-путей
- сочетать оба способа — условия на объекты и на dh-пути работают вместе
⚠️ Важно: показ или скрытие объекта работает только в BGE.
В дизайнере на сцене все объекты отображаются независимо от заданных условий.
Как установить условия видимости
-
Выберите объект, для которого хотите настроить отображение.
-
В правой панели «Редактировать объект» установите галочку «Виден если».
-
После этого станет доступна кнопка «Виден если», при нажатии на которую откроется окно настройки условий.
Окно настроек условия видимости
При нажатии на кнопку «Виден если» откроется окно в правой части экрана с двумя вкладками:
-
Объекты — позволяет задать условия на основе других объектов
-
DH — позволяет задать условия на основе значений из dh-путей
1. Установка условий видимости на основе другого объекта
На вкладке «Объекты» отображается список всех объектов на сцене с типами text, image и video (кроме самого целевого объекта).
Чтобы использовать объект в качестве условия:
-
Установите галочку рядом с нужным объектом — теперь целевой объект зависит от выбранного объекта
-
Справа от объекта иконка карандаша станет доступной — по ней можно настроить конкретное условие
Настройка условий
При нажатии на иконку карандаша открывается окно с настройками:
-
Заголовок — имя объекта, от которого зависит отображение целевого
-
Валидатор — тип условия (Равно, Не равно, Видимость)
-
Тип данных — Строка (по умолчанию) или Число
-
Условие — значение, которому должен соответствовать
sourceилиtextобъекта -
Кнопка «Принять» — сохраняет указанные условия
Чтобы отписаться от объекта, просто снимите галочку рядом с его именем в списке.
✅ Пример №1:
Целевой объект виден, если зависимый объект равен "10"
Допустим, мы хотим, чтобы объект target_object отображался только тогда, когда объект dependent_text содержит значение "10".
Что нужно сделать:
- У объекта
target_objectвключаем чекбокс «Виден если». - Нажимаем кнопку «Виден если», чтобы открыть настройки.
- Во вкладке «Объекты» находим и ставим галочку рядом с
dependent_text. - Нажимаем на иконку карандаша справа от него, чтобы настроить условие.
- В открывшемся окне настраиваем следующее:
- Валидатор:
Равно - Тип данных:
Строка - Условие:
10
- Валидатор:
- Нажимаем кнопку «Принять», чтобы сохранить.
Теперь нажимаем кнопку «Показать сцену», и убеждаемся, что target_object виден только тогда, когда у dependent_text значение "10".
✅ Пример №2:
Целевой объект виден, если виден зависимый объект
Допустим, мы хотим, чтобы объект target_object отображался только тогда, когда отображается объект dependent_text(Если у него не закрыт глазик и прозрачность не равна 0)
Что нужно сделать:
- В окне настроек условий для
dependent_textустанавливаем следующие значения:- Валидатор:
Видимость - Тип данных:
*не имеет значение* - Условие:
*не имеет значение*
- Валидатор:
- Нажимаем кнопку «Принять», чтобы сохранить.
2. Установка условий видимости на основе dh-пути
На вкладке «DH» отображается список всех dh-путей, на которые вы уже подписались.
Если подписок пока нет, список будет пуст.
Добавление нового dh-пути
Чтобы добавить новый путь, нажмите кнопку «Добавить dh-путь» внизу окна. Откроется окно с настройками, аналогичное настройке условий для объектов.
Настройка условий для dh-пути
В открывшемся окне доступны следующие поля:
-
DH-путь — путь, на который вы хотите подписаться.
-
Валидатор — тип условия (например: Равно, Не равно).
-
Тип данных — Строка (по умолчанию) или Число.
-
Условие — значение, которому должен соответствовать
sourceилиtext, полученное по dh-пути. -
Кнопка «Принять» — сохраняет и добавляет условие в список.
После создания подписки:
-
dh-путь появится в списке вкладки «DH».
-
Вы можете включать или выключать подписку, устанавливая или снимая чекбокс рядом с путём.
-
Для редактирования условий нажмите на иконку карандаша.
-
Для удаления пути — нажмите на иконку мусорной корзины.
✅ Пример №3:
Целевой объект виден, если значение в dh-пути "/root/test_dh" НЕ равно "hide"
Что нужно сделать:
- У объекта
target_objectвключаем чекбокс «Виден если». - Нажимаем кнопку «Виден если», чтобы открыть настройки.
- Во вкладке «DH» добавляем dh-путь
"/root/test_dh"по кнопке "Добавить dh-путь" - В открывшемся окне настраиваем следующее:
- Dh-путь:
/root/test_dh - Валидатор:
Не равно - Тип данных:
Строка - Условие:
hide
- Dh-путь:
- Нажимаем кнопку «Принять», чтобы сохранить.
Когда срабатывает логика Visible if
Логика отображения/скрытия объекта по условиям Visible if срабатывает в следующих случаях:
- При показе сцены
— условия видимости проверяются при показе сцены в BGE - При показе объекта
— если объект стал видимым, и от него зависят другие объекты, то они тоже автоматически покажутся или скроются в зависимости от заданных условий - При использовании Instant Show
— если объект изменил своё состояние через Instant Show и от него зависят другие объекты, то они тоже автоматически покажутся или скроются в зависимости от заданных условий - При получении данных по dh-пути
— если какой-либо объект подписан на данный dh-путь, то при обновлении значения произойдёт проверка условий и обновление видимости


















No comments to display
No comments to display