This page has been translated automatically.
Видеоуроки
Интерфейс
Основы
Продвинутый уровень
Подсказки и советы
Основы
Программирование на C#
Рендеринг
Профессиональный уровень (SIM)
Принципы работы
Свойства (properties)
Компонентная Система
Рендер
Физика
Браузер SDK 2
Лицензирование и типы лицензий
Дополнения (Add-Ons)
Демонстрационные проекты
API Samples
Редактор UnigineEditor
Обзор интерфейса
Работа с ассетами
Контроль версий
Настройки и предпочтения
Работа с проектами
Настройка параметров ноды
Setting Up Materials
Настройка свойств
Освещение
Sandworm
Использование инструментов редактора для конкретных задач
Расширение функционала редактора
Встроенные объекты
Объекты (Objects)
Эффекты
Декали
Источники света
Geodetics
World-ноды
Звуковые объекты
Объекты поиска пути
Player-ноды
Программирование
Основы
Настройка среды разработки
Примеры использования
C++
C#
UnigineScript
Унифицированный язык шейдеров UUSL (Unified UNIGINE Shader Language)
Плагины
Форматы файлов
Материалы и шейдеры
Rebuilding the Engine Tools
Интерфейс пользователя (GUI)
Двойная точность координат
API
Animations-Related Classes
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
VR-Related Classes
Работа с контентом
Оптимизация контента
Материалы
Визуальный редактор материалов
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Учебные материалы
Внимание! Эта версия документация УСТАРЕЛА, поскольку относится к более ранней версии SDK! Пожалуйста, переключитесь на самую актуальную документацию для последней версии SDK.
Внимание! Эта версия документации описывает устаревшую версию SDK, которая больше не поддерживается! Пожалуйста, обновитесь до последней версии SDK.

Trigger

Trigger is a zero-sized node that has no visual representation and triggers events when: Trigger - это нода нулевого размера, которая не имеет визуального представления и запускает события, когда:

  • It is enabled/disabled (the Enabled event is triggered).Она включается/выключается (вызывается событие Enabled).
  • Its transformation is changed (the Position event is triggered).Ее трансформации изменяются (вызывается событие Position).

The Node Trigger node is usually added as a child node to another node, so that the handler functions were executed on the parent node enabling/disabling or transforming.Node Trigger обычно добавляется как дочерняя нода к другой ноде, так что функции обработки событий будут запускаться при включении/выключении или трансформации родительской ноды.

Примечание
The Enabled and Position event handlers should be implemented in the World script.Обработчики событий Enabled и Position должны быть реализованы в World-скрипте.

The Node Trigger can work with procedurally created World Clutter objects.Node Trigger может работать с процедурно созданными объектами World Clutter.

The Node Trigger can be used, for example, to play a sound of thunder when a lightning flashes: when the lightning node is enabled, the Enabled event handler that plays a sound is executed.Node Trigger может использоваться, например, для воспроизведения звука грома при вспышке молнии: когда включена нода молнии, выполняется обработчик событий Enabled, который воспроизводит звук.

Lightning node enabledНода Lightning включена

See also
Дополнительная информация#

Adding a Node Trigger
Добавление Node Trigger#

To add a new Node Trigger via UnigineEditor do the following:Чтобы добавить новый Node Trigger через UnigineEditor, сделайте следующее:

  1. In UnigineEditor, on the Menu bar, click Create -> Logic -> Node Trigger.В UnigineEditor в строке меню щелкните Create -> Logic -> Node Trigger.

  2. Place the Node Trigger in the world.Поместите Node Trigger в мир.

  3. Add the Node Trigger as a child to a node for which handlers should be executed: select the Node Trigger in the World Nodes Hierarchy window and drag it inside the required node.Добавьте Node Trigger в качестве дочерней к ноде, для которой должны выполняться обработчики событий: выберите Node Trigger в окне World Nodes Hierarchy и перетащите ее внутрь требуемой ноды.

Editing a Node Trigger
Редактирование Node Trigger#

To edit the Node Trigger, select it and go to the Node tab of the Parameters window.Чтобы отредактировать Node Trigger, выберите ее и перейдите на вкладку Node окна Parameters.

Node Trigger settingsNode Trigger настройки

Handling Events
Обработка событий#

Editing a trigger node includes implementing and specifying the Enabled and Position event handlers that are executed on enabling or positioning the Trigger node correspondingly.Редактирование ноды триггера включает в себя реализацию и указание обработчиков событий Enabled и Position, которые выполняются при включении или позиционировании ноды Trigger соответственно.

The event handler must receive at least 1 argument of the NodeTrigger type. In addition, it can also take another 2 arguments of any type. Обработчик события должен принимать как минимум 1 аргумент типа NodeTrigger. Кроме того, он может принимать еще 2 аргумента любого типа.

The event handlers are set via pointers specified when subscribing to the following events: Enabled and Position.Обработчики событий задаются через указатели, указанные при подписке на следующие события: Enabled и Position.

Исходный код (C++)
// subscribe to the Enabled event when the trigger is enabled
nodeTrigger->getEventEnabled().connect(enabled_event_handler);
// subscribe to the Position event when the trigger's transformation is changed
nodeTrigger->getEventPosition().connect(position_event_handler);
Исходный код (C#)
// subscribe to the Enabled event when the trigger is enabled
nodeTrigger.EventEnabled.Connect(enabled_event_handler);
// subscribe to the Position event when the trigger's transformation is changed
nodeTrigger.EventPosition.Connect(position_event_handler);

Информация, представленная на данной странице, актуальна для версии UNIGINE 2.19.1 SDK.

Последнее обновление: 04.03.2025
Build: ()