К основному контенту

Сообщения

Показаны сообщения с ярлыком "DECLARE_DELEGATE"

Создание делегата, который связан с UFUNCTION.

Делегаты позволяют нам вызывать функцию не знаю какая именно назначена функция. Они являются безопасной версией указателя на функцию. Здесь будет разобрано как ассоциировать UFUNCTION с делегатом, чтобы она вызывалась, когда он выполняется. Чтобы получился этот пример, необходимо использовать проект с классом TriggerVolume из прошлой статьи . Как это сделать... Внутри заголовочного файла  GameMode объявить делегат с помощью специального макроса, который нужно написать над  UCLASS() : DECLARE_DELEGATE(FStandardDelegateSignature) UCLASS() class EVENT_API AEventGameModeBase : public AGameModeBase Добавить новый член класса в GameMode : FStandardDelegateSignature MyStandardDelegate; Создать в редакторе движка новый класс Actor , назвав его  DelegateListener . И добавить в заголовочный файл нового класса следующие объявления: UFUNCTION() void EnableLight(); UPROPERTY() UPointLightComponent* PointLight; В конструктор класса, надо добавить код для создания ...