Actor в Unreal Engine: разбираем класс Актор

Друзья, приветствую, с Вами Будуев Антон. В этой статье мы обсудим один из самых основополагающих Blueprint-классов в Unreal Engine (UE4, UE5) — класс Actor (Актор).

Вскоре выйдет моя бесплатная книга по Blueprints для Unreal Engine в PDF формате. Как она выйдет, рекомендую её скачать, чтобы Вы детально изучили блюпринты Анрил Энджин.

Unreal Engine Actor

Actor в Unreal Engine — это абсолютно любой объект, который можно разместить на игровом уровне. Это может быть как статичная 3D-модель, так и анимированный персонаж, камера, звуковой файл и многое другое. Таким образом, Актором является всё, что размещается на уровне. И не обязательно, чтобы этот объект отображался визуально.

Музыкальный Actor, размещённый на уровне в Unreal Engine
Музыкальный Actor, размещённый на уровне в Unreal Engine

Все Акторы поддерживают 3D-преобразования, такие как перемещение, вращение и масштабирование.

Однако стоит отметить, что объекты класса Actor не хранят информацию о своём 3D-преобразовании, включая местоположение, поворот и масштабирование. Вместо этого они используют данные, полученные от своего корневого Scene-компонента. Таким образом, информация о трансформации — положении, повороте и масштабировании — хранится в Scene Root Component, который является обязательным для любого объекта класса Actor.

Любой Актор содержит внутри себя данные:

  • Компоненты — это то, из чего состоит Актор: статичная 3D-модель, скелетная 3D-модель, свет, звук, а также его функциональность, например, вращение объекта или его передвижение. Причём каждый компонент заранее уже подготовлен в Unreal Engine, и его можно использовать для состава любого Актора. То есть, иначе говоря, Актор, как конструктор, собирается из готовых компонентов.
  • Свойства — это переменные, хранящие в себе определенные значения, характеризующие этот Актор и его компоненты. Например, координаты и поворот Актора в мире, его масштаб, скорость передвижения, если у Актора имеется компонент передвижения, и так далее.

Важно понимать, что такие простые Акторы не имеют в себе никакой логики. Да, они могут внутри себя иметь какую-то функциональность на основе готовых компонентов, например, передвижение или свет. Но интерактивной логики, которая бы позволяла реагировать этим объектам на различные игровые события, в них нет. То есть, такие объекты никак не программируются, и в игре они находятся статично.

Class Actor

Если к любому Актору добавить код логики, запрограммированный на языке C++ или в скриптах Blueprints, то он будет классифицироваться как Class Actor или Blueprint Class Actor. Добавление к объекту логики позволяет создавать любой интерактивный объект, будь то открываемая дверь, машина или управляемый персонаж.

Blueprint-класс Actor, как и простой Актор, можно разместить в игровом мире. Он также может в себе содержать компоненты и свойства, но, в отличие от простого Актора, даёт возможность программировать внутри себя Blueprint-логику.

От класса Actor уже наследуются все остальные классы, объекты которых можно разместить в игровом мире. Но каждый последующий наследуемый класс содержит дополнительный готовый функционал.

Иначе говоря, в Unreal Engine класс Actor служит основой для множества других классов. Таких как Pawn, Character, Player Controller, Game Mode, Player State, Game State, Camera Actor и многих других. Эти классы наследуют от Actor базовые свойства объектов, размещённых на уровне, включая трансформацию, репликацию и другие свойства. Каждый из этих классов служит для выполнения конкретной своей задачи в рамках игры.

Сам же класс Actor в движке Unreal Engine (UE4, UE5) используется для создания неодушевленных объектов в игровом мире, которые наделены определенной логикой: открываемая дверь, зажигающаяся лампочка, подбираемый предмет и прочее.

Перевод официальной справки: Actor — это базовый класс для объектов, размещаемых или создаваемых (спавнящихся) на уровне. Акторы могут содержать набор компонентов, управляющих их поведением (движение, рендеринг и т.д.). Ключевая функция Actor — репликация свойств и вызовов функций по сети во время игры.

Базовые свойства класса Actor

По умолчанию в классе Actor нет какого-то готового специализированного функционала, кроме того, что объекты класса Actor можно размещать в игровом мире. Весь специфический функционал реализуется уже в дочерних от него классах. Основная миссия класса Actor — это предоставление набора базовых свойств размещаемого объекта в мире для последующих дочерних пользовательских и встроенных в Unreal Engine классов.

  • Components — к любому Актору можно присоединить особый тип объектов: компоненты. Где каждый компонент содержит в себе определённый функционал. Например, компонент Static Mesh позволяет разместить в Акторе статическую 3D-модель, компонент Skeletal Mesh Component — анимированного персонажа, Camera Component — камеру и так далее. Иначе говоря, любой объект Актора в Unreal Engine собирается, словно конструктор, из разных составляющих его готовых компонентов.
  • Transform — любой Актор в игровом мире можно трансформировать (менять местоположение, поворот и масштаб).
  • Life Cycle — Актор содержит функционал полного жизненного цикла (создание, обновление, уничтожение):
    • Spawn — создание нового экземпляра класса (порождение объекта в игровом мире во время действия игры).
    • Tick — тик, это способ обновления логики объекта Actor во время обновления кадра игры. Это позволяет выполнять любые необходимые вычисления или действия с повтором в частоту обновления кадров (FPS).
    • Destroy — уничтожение экземпляра класса (удаление объекта из игрового мира).
  • Replication — репликация по сети для многопользовательского режима (копирование свойств и данных между сервером и клиентами).
  • Damage — поддержка получения урона.
  • Events — наличие в объекте Актора базовых событий для взаимодействия с игровым миром (события пересечения, столкновения, урона, клика мышки, сенсорного касания и другие).

Практика в Unreal Engine: работа с базовой функциональностью Актора — изменение Transform (Scale)

Объект Unreal Engine Актор

Для начала создадим в игровом мире простой Актор. Для этого в Unreal Editor перейдём в меню Quickly add to the project / Shapes и добавим объект Cube. Этой операцией мы создадим в игровом мире простой Актор (объект с формой куба).

Создание в Unreal Editor Актора Cube (куб)
Создание в Unreal Editor Актора Cube (куб)

Поскольку добавленный Cube относится к объектам Actor, то у него присутствуют все основные свойства, присущие Акторам. Среди которых — свойство Transform (трансформация объекта: местоположение, поворот и масштаб). Давайте изменим данному Актору его масштаб. Для этого выделим объект куба и перейдём в меню Details. В разделе Transform изменим Scale (масштаб) по оси Y на 3. Данной операцией мы увеличим куб по оси Y в 3 раза.

Изменение масштаба Актора Cube
Изменение масштаба Актора Cube

Так как Cube это простой Актор, не имеющий никакой логики, то изменение масштаба для него возможно только в ручном режиме в Unreal Editor. В запущенной игре данный Актор останется в этих же размерах (увеличенный по оси Y в 3 раза) без возможности каких-либо других изменений в самой игре.

Для того чтобы иметь возможность изменять объект в самой игре, его нужно превратить из простого Актора, объекта, размещённого в игровом мире, в Blueprint-класс Actor. Который, в свою очередь, может иметь внутри себя запрограммированную игровую логику, позволяющую изменять состояние объекта непосредственно в самой игре.

Blueprint-класс Actor

Превратим наш простой Актор в Blueprint-класс Actor. Для этого выделим объект куба и перейдём во вкладку Details. Далее нажмём кнопку Converts this actor.

Кнопка Converts this actor in Blueprint Class
Кнопка Converts this actor in Blueprint Class

Откроется новое небольшое окно Create Blueprint From Selection, в котором мы можем выбрать класс и наименование для нашего нового блюпринта. Выберем первый пункт New Subclass. В разделе Parent Class выберем StaticMeshActor. Имя Blueprint name оставим по умолчанию — Cube_Blueprint. После нажмём кнопку Select.

Создание Blueprint-класса Actor в Unreal Engine на основе простого объекта Актора
Создание Blueprint-класса Actor в Unreal Engine на основе простого объекта Актора

Данной операцией мы конвертируем обычный объект Актор в блюпринт класса Actor, содержащий в себе Static Mesh с 3D-моделью куба и вкладку Event Graph, в которой мы можем описать логику изменения состояния нашего объекта непосредственно в самой игре. При чём сам файл блюпринта будет создан в текущей папке Content Browser.

Далее перейдём во вкладку Event Graph созданного блюпринта и воспользуемся находящимся в этой вкладке событием Event Tick. По вызову этого события мы будем изменять масштаб нашего куба.

Event Tick срабатывает каждый кадр обновления игры, что для наших целей — очень часто. Ограничим частоту вызова этого события.

Перейдём во вкладку Details самого Актора. И в разделе Actor Tick установим в параметре Tick Interval (secs) интервал между вызовами Event Tick в 1 секунду. Таким образом, теперь данное событие будет вызываться только 1 раз за секунду.

Устанавливаем в Details Actor интервал между вызовами события Event Tick
Устанавливаем в Details Actor интервал между вызовами события Event Tick

Далее по каждому вызову этого события нодой Set Actor Scale 3D будем изменять масштаб Актора по всем 3 осям (X, Y, Z) в случайных значениях между 0.5 и 3. Для генерации случайных значений воспользуемся нодой Random Float in Range, в которой в качестве минимального значения установим 0.5, а максимального 3. Данная нода при каждом своём вызове будет возвращать случайное число между 0.5 и 3 в формате типа float.

Для того чтобы случайное число в формате типа float подключить к ноде Set Actor Scale 3D, разделим параметр New Scale 3D на 3 раздельных float параметра для каждой из осей (X, Y, Z). Для этого через правую клавишу мыши кликнем по данному параметру и выберем пункт Split Struct Pin. Далее подключим Random Float in Range к каждому входу New Scale 3D (X, Y, Z).

Скриншот

Практика в Unreal Engine: изменяем каждую секунду масштаб Actor
Практика в Unreal Engine: изменяем каждую секунду масштаб Actor

Код на BlueprintUE

Если код отображается без связей, нажмите сверху кода на кнопку «Graph» Если код отображается без связей, нажмите сверху кода на кнопку "Graph"


Таким образом, конвертировав обычный Актор движка Анрил Энджин в объект блюпринт-класса Actor и настроив внутри него определённым способом логику, мы смогли изменять свойства этого объекта, а именно, его масштаба, непосредственно в самой игре.

Настройки класса Actor в меню Details (class Defaults)

Actor Tick

Actor Details: Actor Tick
Actor Details: Actor Tick
  • Start with Tick Enabled (bool, по умолчанию True) — определяет, будет ли тик Актора включён при запуске. Если значение True, Актор начинает свою работу с активированным тиком (обновлением каждый кадр).
  • Tick Interval (float, по умолчанию 0,0 сек)  — интервал между тиками Актора в секундах. Определяет, как часто Актор будет обновляться (например, 0.1 = 10 раз в секунду). Если значение отрицательное или равно 0, то Tick срабатывает каждый кадр.
  • Allow Tick Before Begin Play (bool, по умолчанию False) — определяет, разрешено ли этому Актору выполнять функцию Tick до вызова события Begin Play. По умолчанию Акторы начинают тикать только после вызова Begin Play, однако установка этого свойства в значение True позволяет изменить стандартное поведение и начать тикать раньше. Это свойство имеет смысл только для Акторов, у которых включён тик (Tick). Используется для случаев, когда требуется выполнение логики обновления (Tick) до официального старта игры для данного Актора, например, для подготовки состояния или предварительных вычислений до начала игрового процесса.
  • Tick Even when Paused (bool, по умолчанию = False) — определяет, тикать ли Актору, когда игра поставлена на паузу. Если значение True, Актор продолжает обновляться даже во время паузы.
  • Allow Tick on Dedicated Server (bool, по умолчанию = True) — определяет, будет ли событие Event Tick вызываться для данного Акторa на выделенных серверах. Если свойство установлено в значение False, то событие Event Tick в Blueprint не будет работать на выделенном сервере, что позволяет избежать лишних вычислений, если логика тика не требуется на сервере. Используется для оптимизации производительности.
  • Tick Group (по умолчанию Pre Physics— определяет группу порядка срабатывания Tick при обновлении кадра. Позволяет задать, когда именно будет происходить тик относительно других систем движка. Возможные варианты групп:
    • Pre Physics (перед симуляцией физики);
    • During Physics (во время симуляции физики);
    • Post Physics (после симуляции физики);
    • Post Update Work (после всей работы).

Более подробно про данные группы Вы можете изучить в отдельной статье: Tick Group Unreal Engine.

Replication

Actor Details: Replication
Actor Details: Replication
  • Only Relevant to Owner (bool, по умолчанию False) если установлено значение True, данный Актор будет реплицироваться только своему владельцу (Owner). Это означает, что он не будет реплицироваться другим клиентам. Если свойство изменяется во время игры, необходимо явно закрыть все каналы не-владельцев (Non-Owner Channels), чтобы избежать проблем с репликацией. Это свойство используется для оптимизации сетевой репликации. Акторы, которые имеют смысл только для их владельца могут быть помечены этим флагом, чтобы уменьшить ненужный сетевой трафик для других клиентов.
  • Always Relevant (bool, по умолчанию False) если установлено значение True, Актор будет реплицироваться всем клиентам, вне зависимости от того, кто является его владельцем. Используется для объектов, которые должны быть видимы и синхронизированы для всех игроков в сетевой игре. Параметр переопределяет свойство Only Relevant to Owner.
  • Replicate Movement (bool, по умолчанию False) определяет, будут ли у данного Актора реплицироваться по сети свойства, связанные с движением и расположением. Для работы этой опции сам Актор должен быть также настроен на репликацию. Если свойство установлено в значение True, то позиция, вращение и другие параметры движения Актора будут автоматически синхронизироваться между сервером и клиентами.
  • Net Load on Client (bool, по умолчанию True) определяет, будет ли этот Актор загружаться на сетевых клиентах при загрузке карты. Если свойство установлено в значение True, Актор будет автоматически создан и загружен на стороне клиента во время загрузки уровня.
  • Net Use Owner Relevancy (bool, по умолчанию False)  позволяет Актору использовать сетевую релевантность своего владельца, что упрощает управление репликацией для зависимых объектов. Когда свойство установлено в значение True, Актор делегирует определение своей релевантности и приоритета в сети своему владельцу (Owner).
  • Replicates (bool, по умолчанию False) определяет, будет ли данный Актор реплицироваться на удалённые клиенты в сетевой игре. Если это свойство установлено в значение True, Актор будет синхронизироваться между сервером и клиентами, что позволяет поддерживать одинаковое состояние объекта во всех копиях игрового мира.
  • Net Dormancy — режим ожидания Актора, параметр серверной оптимизации. Он позволяет сэкономить несколько миллисекунд процессорного времени на кадр, что особенно важно, когда в проекте присутствует множество реплицированных Акторов, которые длительное время остаются неизменными. Определяет режим «спячки» (Dormancy) для Актора, позволяя ему исключаться из списка репликации без уничтожения на клиентах. На выбор имеются несколько вариантов настройки:
    • Never: Актор никогда не переходит в спящий режим и всегда реплицируется.
    • Awake: Актор активен и может быть переведён в спящий режим при необходимости.
    • Dormant All: Актор находится в спящем режиме для всех клиентов и не реплицируется, пока не «проснётся».
    • Dormant Partial: Актор находится в спящем режиме только для некоторых соединений (клиентов).
    • Initial: Актор, когда был помещён на карту, изначально бездействует для всех соединений (клиентов).
  • Net Cull Distance Squared (float, по умолчанию 225000000,0) определяет квадрат максимальной дистанции от точки обзора клиента, на которой данный Актор считается релевантным и будет реплицироваться. Если расстояние между Актором и клиентом превышает это значение, репликация Актора для этого клиента прекращается, что используется для оптимизации сетевого трафика за счёт исключения из репликации объектов, находящихся слишком далеко от игрока.
  • Net Update Frequency (float, по умолчанию 100,0) — определяет частоту обновления репликации Актора (раз в секунду).
  • Min Net Update Frequency (float, по умолчанию 2,0) — используется для определения минимальной частоты (раз в секунду), до которой может быть снижена частота репликации Актора, если его реплицируемые свойства изменяются редко. Это позволяет автоматически уменьшать нагрузку на сеть для Акторов с нечасто меняющимися данными, сохраняя при этом корректную синхронизацию состояния между сервером и клиентами.
  • Net Priority (float, по умолчанию 1,0) — определяет приоритет данного Актора при выборе объектов для репликации в условиях низкой пропускной способности или перегруженного сетевого канала: чем выше значение этого параметра, тем выше вероятность того, что Актор будет реплицироваться. Это свойство позволяет управлять порядком и частотой передачи данных о разных Акторах, чтобы наиболее важные для геймплея объекты получали преимущество при отправке обновлений клиентам.
  • Physics Replication Mode — определяет, каким образом будет происходить репликация физики для этого Актора. Это свойство актуально только если Актор реплицирует движение и содержит компонент с включённой симуляцией физики. Возможные режимы:
    • Default: используется стандартный режим репликации физики, определённый движком.
    • Predictive Interpolation: (в разработке) применяется предиктивная интерполяция для более плавного отображения физического движения на клиентах.
    • Resimulation: (в разработке) используется повторная симуляция физики на стороне клиента для повышения точности синхронизации.

Репликация в Unreal Engine (UE4, UE5) — это процесс передачи копированных данных с сервера на клиент в многопользовательских играх (создание копии данных). Когда происходит репликация объекта, он существует как минимум сразу в двух копиях: одна на сервере, а другая копия на сетевом клиенте.

  • Call Pre Replication (bool, по умолчанию True) — определяет, будет ли для этого Актора вызываться функция Pre Replication перед каждой потенциальной репликацией. Если свойство установлено в значение True, Pre Replication будет вызываться, что позволяет подготовить или изменить состояние Актора непосредственно перед отправкой его данных по сети.
  • Call Pre Replication for Replay (bool, по умолчанию True) — определяет, будет ли для этого Актора вызываться функция Pre Replication For Replay перед каждой потенциальной репликацией в режиме реплея (повтора). Если свойство установлено в значение True, Pre Replication For Replay будет вызываться, что позволяет подготовить или скорректировать состояние Актора непосредственно перед отправкой его данных для воспроизведения записи.
  • Replay Rewindable (bool, по умолчанию False) — свойство определяет поведение Актора при воспроизведении реплея (демозаписи) во время перемотки. Актор будет удален только если реплей перемотан на момент времени, когда Актор еще не существовал. В остальных случаях, вместо уничтожения Актора, будет вызван виртуальный метод Rewind For Replay, который позволяет Актору сбросить свое состояние до нужного момента времени. При этом, Актор не должен быть уничтожен игровым кодом во время реплея (то есть он должен существовать на протяжении всей записи). Также механизм отката через удаление (Rollback Via Deletion) не поддерживается.
  • Replicate Using Registered Sub Object List (bool, по умолчанию False) — свойство определяет, какой механизм будет использоваться для репликации подчиненных объектов (например, компонентов) Актора.
    • True: система репликации будет реплицировать только зарегистрированные подчиненные объекты и список реплицируемых компонентов Актора.
    • False: система репликации вместо этого вызовет виртуальную функцию ReplicateSubobjects(), где подчиненные объекты и компоненты Актора должны быть реплицированы вручную.
  • Replicated Movement: Location Quantization Level (по умолчанию Round Whole Number) — определяет, с какой точностью (уровнем квантования, до какого знака после запятой) компоненты координат положения Актора передаются по сети при репликации движения. Это влияет на то, насколько грубо или точно будет передаваться позиция, что важно для оптимизации сетевого трафика. Внимание! Менять значение по умолчанию только в случае появления визуальных артефактов. Доступно 3 значения на выбор:
    • Round Whole Number: каждый компонент вектора координат округляется до ближайшего целого числа;
    • Round One Decimal: округление каждого компонента вектора до одного знака после запятой;
    • Round Two Decimal: округление каждого компонента вектора до двух знаков после запятой.
  • Replicated Movement: Velocity Quantization Level (по умолчанию Round Whole Number) — определяет, с какой точностью (уровнем квантования, до какого знака после запятой) компоненты скорости Актора будут передаваться по сети при репликации движения. Это влияет на баланс между точностью передачи движения и объёмом сетевого трафика. Внимание! Менять значение по умолчанию только в случае появления визуальных артефактов. Доступно 3 значения на выбор:
    • Round Whole Number: каждый компонент вектора скорости округляется до ближайшего целого числа;
    • Round One Decimal: округление каждого компонента вектора до одного знака после запятой;
    • Round Two Decimal: округление каждого компонента вектора до двух знаков после запятой.
  • Replicated Movement: Rotation Quantization Level (по умолчанию Byte Components) — определяет, с какой точностью компоненты вращения (Yaw, Pitch, Roll) Актора будут передаваться по сети при репликации движения. Это влияет на плавность и точность передачи вращения, а также на объём сетевого трафика. Внимание! Менять значение по умолчанию только в случае появления визуальных артефактов. Доступно 2 значения на выбор:
    • Byte Components: каждый компонент Rotation будет сжат до 8 бит;
    • Short Components: каждый компонент Rotation будет сжат до 16 бит.

Rendering

Actor Details: Rendering
Actor Details: Rendering
  • Actor Hidden In Game (bool, по умолчанию False) — управляет видимостью Актора во время игры. Если это свойство установлено в значение True, Актор и все его компоненты становятся невидимыми в игровом режиме, но остаются видимыми в редакторе.
  • Editor Billboard Scale (float, по умолчанию 1.0) — определяет масштаб (размер) иконки-билборда (Billboard) для Актора в редакторе.

Billboard — это двумерная иконка, которая всегда «смотрит» на камеру и используется для визуального представления объектов в редакторе, у которых нет собственного видимого меша (например, точки спавна, триггеры). Такие иконки помогают легко находить и выделять объекты на сцене.

Collision

Actor Details: Collision
Actor Details: Collision
  • Generate Overlap Events During Level Streaming (bool, по умолчанию False) — определяет, будут ли для этого Актора генерироваться события перекрытия (Begin Overlap и End Overlap) при его появлении в результате стриминга уровней (в том числе при начальной загрузке уровня).
  • Update Overlaps Method During Level Streaming — определяет, каким образом для этого Актора будет инициализироваться состояние перекрытий (Overlap State) при его загрузке через Level Streaming (в том числе при начальной загрузке уровня). Это влияет на то, будут ли Актор и его компоненты сразу знать, с какими объектами они соприкасаются, и, соответственно, будут ли корректно работать события Begin Overlap и End Overlap. Если перекрытия не инициализированы, Актор и его компоненты не будут знать о текущих пересечениях, пока один из объектов не обновит своё состояние (например, при движении). Варианты значения:
    • Use Config Default: использовать значение по умолчанию, заданное в ini-файле или нативном классе.
    • Always Update: всегда инициализировать состояние перекрытий при загрузке. Все объекты сразу знают, с чем они пересекаются.
    • Only Update Movable: инициализировать только если Root Component Актора имеет тип Movable (подвижный объект). Экономит производительность, если большинство объектов статичны.
    • Never Update: никогда не инициализировать состояние перекрытий при загрузке. Максимальная экономия ресурсов, но начальное состояние перекрытий может быть некорректным до первого движения или другого обновления.
  • Default Update Overlaps Method During Level Streaming — определяет стандартный способ инициализации состояния перекрытий (Overlap State) для данного класса Актора при загрузке через Level Streaming, если для экземпляра Актора выбрано значение Use Config Default в свойстве Update Overlaps Method During Level Streaming. Это позволяет централизованно задавать поведение для всех Акторов конкретного класса через конфигурационный файл, не прописывая это вручную для каждого объекта.
  • Relevant for Level Bounds (bool, по умолчанию True) — определяет, будут ли границы (Bounds) компонентов этого Актора учитываться при вычислении общей ограничивающей рамки (Bounding Box) уровня.
    • True: все компоненты Актора, участвующие в расчёте Bounds, будут включены в общий Bounding Box уровня.
    • False: границы компонентов этого Актора не будут учитываться при расчёте общей ограничивающей рамки уровня.

В Unreal Engine коллизия (Collision) представляет собой упрощённую невидимую геометрию, которая сохраняет общую форму 3D-модели, но при этом содержит меньшее количество полигонов. Коллизия необходима для того, чтобы регистрировать события пересечения/перекрытия (Overlap) или касания/удара (Hit) разных объектов друг с другом. И на основе данных событий выстраивать взаимодействие этих объектов.

Actor

Actor Details: Actor
Actor Details: Actor
  • Can be Damaged (bool, по умолчанию True) — определяет, может ли этот Актор получать урон (Damage). Если свойство установлено в True, Актор будет реагировать на вызовы функций нанесения урона.
  • Initial Life Span (float, по умолчанию 0.0) — определяет, сколько секунд будет жить этот Актор после появления в мире (например, после спавна или загрузки уровня). Если значение равно 0 (по умолчанию), Актор будет существовать вечно, пока не будет уничтожен вручную или игровыми событиями.
  • Spawn Collision Handling Method (по умолчанию Always Spawn, Ignore Collisions) — определяет, как движок будет обрабатывать ситуацию, когда Актор спавнится (создаётся) в месте, где уже есть коллизия с другими объектами. Это важно для предотвращения появления Акторов внутри стен, других объектов или для управления логикой появления снарядов, NPC и других динамических объектов. Существует 4 варианта на выбор:
    • Always Spawn, Ignore Collisions: Актор будет создан в любом случае, независимо от пересечений коллизии;
    • Try To Adjust Location, But Always Spawn: Актор попытается найти ближайшее место без коллизии на основе компонентов формы, но создан будет в любом случае, даже если такое место не найдено;
    • Try To Adjust Location, Don’t Spawn If Still Colliding: Актор попытается найти ближайшее место без коллизии на основе компонентов формы и будет создан только в том случае, если такое место будет найдено;
    • Do Not Spawn: объект не будет создан вообще.
  • Find Camera Component when View Target (bool, по умолчанию True) — определяет, будет ли при использовании этого Актора в качестве цели для камеры (View Target) автоматически искаться и использоваться его Camera Component для построения вида. Если такой компонент найден, камера будет «смотреть» из его позиции и с его параметрами (FOV, пост-обработка и т.д.).
  • Ignores Origin Shifting (bool, по умолчанию False) — определяет, будет ли этот Актор игнорировать смещение мирового центра координат (World Origin Shifting).
  • Can be in Cluster (bool, по умолчанию False) — определяет, может ли этот Актор быть включён в GC Cluster (кластер для сборки мусора, Garbage Collection Cluster) для повышения производительности работы сборщика мусора (Garbage Collector, GC) в Unreal Engine. GC Cluster — это специальная оптимизация системы сборки мусора в UE4/UE5, позволяющая группировать связанные объекты (например, Актор и все его компоненты) в один кластер. Вместо того чтобы проверять каждый объект по отдельности, GC может обрабатывать сразу целый кластер, что значительно ускоряет процесс, особенно при большом количестве мелких объектов.
  • Pivot Offset — определяет локальное смещение (Offset) точки привязки (пивота, Pivot) для Актора. Изменение возможно по 3 осям: X, Y, Z. Используется только в редакторе.
  • Layers — массив, хранящий имена слоёв, к которым принадлежит данный Актор. Слои позволяют группировать объекты (прежде всего, в редакторе) для удобного управления, поиска и массовых операций.
  • Tags — пользовательский массив тегов для текущего объекта. Теги используются для группировки и категоризации.

Input

Actor Details: Input
Actor Details: Input
  • Block Input (bool, по умолчанию False) — определяет, будет ли этот Актор блокировать обработку входных данных (Input) для всех Акторов, находящихся ниже него в стеке Input-обработчиков.
    • True: все входные события (нажатия клавиш, мыши, геймпада и т.д.), которые могли бы быть обработаны другими Акторами с меньшим приоритетом (ниже в стеке), будут игнорироваться. То есть этот Актор «перехватывает» Input, и остальные, нижестоящие Акторы в стеке его не получат.
    • False: входные события будут передаваться дальше по стеку, и другие Акторы также смогут их обработать.
  • Auto Receive Input — определяет, будет ли Актор автоматически регистрироваться для получения входных данных (Input) от игрока при запуске игры или при спавне. Это удобно для быстрого подключения Актора к Input-системе без необходимости вручную вызывать методы регистрации. По умолчанию Disabled — отключено. Для того, чтобы включить, необходимо выбрать номер Игрока (Player 0-7).
  • Input Priority (int, по умолчанию 0) — определяет приоритет этого Актора при обработке входных данных (Input) в стеке Input-объектов. Чем выше значение, тем раньше этот Актор получит возможность обработать событие Input по сравнению с другими Акторами, зарегистрированными на тот же источник ввода.

HLOD

Actor Details: HLOD
Actor Details: HLOD
  • Include Actor in HLOD (bool, по умолчанию True) — определяет, будет ли данный Актор включён в иерархическую систему уровней детализации (HLOD).
  • HLOD Layer — слой HLOD, в который должен быть включён текущий объект.

HLOD (High-Level Of Detail) — это технология, которая оптимизирует процесс группировки соседних объектов, упрощая их и объединяя в один Static Mesh, когда они находятся на достаточном для этого расстоянии. Такое объединение позволяет снизить уровень детализации геометрии, а также объединить множество материалов всех объектов в один общий материал.

Physics

Actor Details: Physics
Actor Details: Physics
  • Async Physics Tick Enabled (bool, по умолчанию False) — определяет, будет ли для этого Актора использоваться асинхронный тик физики, что может повысить производительность, но требует осторожности при работе с геймплейной логикой.
    • True: для этого актора физические компоненты (например, коллизии, симуляция физических тел) будут обновляться асинхронно, в отдельном потоке.
    • False: физика будет обновляться синхронно с игровым циклом (по умолчанию для большинства Акторов).

Level Instance

Actor Details: Level Instance
Actor Details: Level Instance
  • Is Main World Only (bool, по умолчанию False) — определяет будет ли данный Актор загружаться только в основном мире (Persistent Level), и не будет появляться при загрузке через Level Instances (экземпляры уровней).

Cooking

Actor Details: Cooking
Actor Details: Cooking
  • Is Editor Only Actor (bool, по умолчанию False) — указывает, что данный Актор предназначен только для работы в редакторе и не должен попадать в финальную (Cooked) сборку игры .
  • Generate Optimized Blueprint Component Data (bool, по умолчанию False) — определяет, будет ли при сборке (Cook) для любых Blueprint-классов на базе этого Актора сохраняться дополнительная оптимизированная информация о компонентах. Если включено, в финальную сборку добавляются специальные данные, ускоряющие спавн (создание) экземпляров этих Blueprint-Акторов в рантайме (во время игры). Это уменьшает задержки при появлении объектов на уровне, особенно если таких объектов много. Но при этом происходит увеличение использования памяти в собранной (Cooked) игре.

Cooking в Unreal Engine — это один из этапов процесса упаковки игрового проекта. На этом этапе контент адаптируют (подготавливают) под конкретные требования платформы, на которой будет запускаться игра.

World Partition

Actor Details: World Partition
Actor Details: World Partition
  • Runtime Grid — имя (Name), определяющее, в какую Partition Grid (сетку сегментирования) попадёт этот Актор при использовании системы World Partition. Если выбрать None, сетка будет выбрана автоматически системой разбиения.
  • Is Spatially Loaded (bool, по умолчанию True) — определяет, будет ли Актор загружаться (Streaming) в Partitioned World (мире с World Partition) на основе своего положения в пространстве и наличия активных Data Layers.
    • True: Актор будет подгружаться только тогда, когда находится в радиусе действия стриминговых источников (например, камеры игрока) и если его Data Layer активен или не задан. Это помогает оптимизировать загрузку объектов и экономить ресурсы, подгружая только то, что реально нужно игроку в данный момент.
    • False: Актор будет загружаться всегда при активном Data Layer, независимо от своей позиции и стриминговых источников. Такой режим полезен для глобальных объектов, логических контроллеров или триггеров, которые должны быть всегда доступны при активном слое данных, даже если игрок далеко.

World Partition в Unreal Engine — система автоматического управления данными и потоковой передачи уровней на основе расстояния. Она представляет комплексное решение для управления обширными мирами. Система избавляет от необходимости дробить большие уровни на более мелкие, сохраняя мир на одном постоянном уровне, который делится на ячейки сетки. Кроме того, World Partition включает автоматическую систему потоковой передачи, которая загружает и выгружает эти ячейки в зависимости от их удалённости от источника передачи.

Event Actor (Blueprint-события класса Актор)

Blueprint-события класса Actor
Blueprint-события класса Actor
  • Event Begin Play — событие, которое вызывается один раз для каждого Актора, когда он впервые начинает участвовать в игровом процессе.
  • Event Destroyed — событие, вызываемое, когда этот Актор был явно уничтожен (Destroyed), например, через вызов Destroy в коде или Blueprint.
  • Event End Play — событие, вызываемое, когда этот Актор удаляется или покидает уровень.
  • Event Tick — событие, вызываемое каждый кадр (Frame), если для этого Актора включён тик (Tick).
  • Event Async Physics Tick — событие, вызываемое каждый физический тик (Physics Tick), если для этого Актора установлен флаг Async Physics Tick Enabled в значение True.
  • Event Actor Begin Overlap — событие, вызываемое, когда этот Актор начинает перекрываться (Overlap) с другим Актором.
  • Event Actor End Overlap — событие, вызываемое, когда этот Актор перестаёт перекрываться (Overlap) с другим Актором.
  • Event Hit — событие, вызываемое, когда этот Актор сталкивается с другим объектом (Blocking Collision): либо сам инициирует столкновение, либо его блокирует другой объект.
  • Event Any Damage — событие, вызываемое каждый раз, когда этот Актор получает любой урон (Damage), независимо от его типа.
  • Event Point Damage — событие, вызываемое, когда этот Актор получает точечный урон (Point Damage).
  • Event Radial Damage — событие, вызываемое, когда этот Актор получает радиальный урон (Radial Damage), например, от взрыва гранаты, бочки, магического заклинания и т.д.
  • Event Actor Begin Cursor Over — событие, вызываемое, когда курсор мыши впервые наводится на этот Актор (при условии, что у него включён интерфейс кликабельности).
  • Event Actor End Cursor Over — событие, вызываемое, когда курсор мыши уходит с границ этого Актора, если у него включён интерфейс кликабельности.
  • Event Actor On Clicked — событие, вызываемое, когда пользователь кликает по этому Актору мышью (или другим устройством ввода), если у него включён интерфейс кликабельности.
  • Event Actor On Released — событие, вызываемое, когда пользователь отпускает кнопку мыши (или другую кнопку ввода), находясь над этим Актором, если у него включён интерфейс кликабельности.
  • Event Actor On Input Touch Begin — событие, вызываемое, когда пользователь касается этого Актора на сенсорном экране (Touch Screen), если для него включены события клика.
  • Event Actor On Input Touch End — событие, вызываемое, когда пользователь завершает касание (отпускает палец или стилус) по этому Актору на сенсорном экране, если для него включены события клика.
  • Event Actor On Input Touch Enter — событие, которое вызывается, когда палец (или стилус) пользователя перемещается по сенсорному экрану и впервые оказывается над этим Актором, если у него включён интерфейс кликабельности.
  • Event Actor On Input Touch Leave — событие, вызываемое, когда палец (или стилус) пользователя, перемещаясь по сенсорному экрану, покидает границы этого Актора, если у него включён интерфейс кликабельности.
  • Event On Reset — событие, вызываемое, когда этот Актор должен быть сброшен в начальное состояние без полного перезагрузки уровня.
  • Event On Become View Target — событие, вызываемое, когда данный Актор становится целью просмотра (View Target) для указанного контроллера игрока (PC).
  • Event On End View Target — событие, вызываемое, когда данный Актор перестаёт быть целью просмотра (View Target) для указанного контроллера игрока (PC).

Blueprint-функции класса Actor

Get Actor (возврат Акторов)

Функции возврата Акторов (Get Actor)
Функции возврата Акторов (Get Actor)
  • Get Actor of Class — возвращает ссылку на первый найденный объект Актора указанного класса в текущем игровом мире.
  • Get All Actors of Class — возвращает массив всех Акторов указанного класса, найденных в текущем игровом мире.
  • Get All Actors of Class with Tag — возвращает массив всех Акторов указанного класса с указанным тегом, найденных в текущем игровом мире.
  • Get All Actors with Tag — возвращает массив всех Акторов с указанным тегом, найденных в текущем игровом мире.
  • Get All Actors with Interface — возвращает массив всех Акторов, реализующих указанный интерфейс, найденных в текущем игровом мире.
  • Get Actor List from Component List — возвращает массив Акторов, найденных в текущем игровом мире, у которых имеются компоненты из указанного массива компонентов.

Location (позиция)

Функции для работы с позицией (Location)
Функции для работы с позицией (Location)
  • Get Actor Location — возвращает текущую позицию объекта Actor в мировых координатах.
  • Set Actor Location — устанавливает новую позицию объекта Actor в мировых координатах.
  • Set Actor Location And Rotation —  одновременно устанавливает позицию и поворот объекта Actor в мировых координатах.
  • Set Actor Relative Location — устанавливает новую позицию объекта Актора относительно его родителя.
  • Add Actor World Offset — добавляет Актору смещение к его текущей мировой позиции.
  • Add Actor Local Offset — добавляет Актору смещение относительно его локальной системы координат.

Rotation (вращение)

Функции для работы с вращением (Rotation)
Функции для работы с вращением (Rotation)
  • Get Actor Rotation — возвращает для Актора текущие значения поворота в пространстве мира.
  • Set Actor Rotation — устанавливает новое значение поворота Актора в мировой системе координат.
  • Set Actor Relative Rotation — устанавливает новое значение поворота Актора относительно родительских координат.
  • Add Actor World Rotation — добавляет дельту вращения к текущему повороту Актора в мировых координатах.
  • Add Actor Local Rotation — добавляет дельту вращения к текущему повороту Актора в локальных координатах самого Актора.

Scale (масштаб)

Функции для работы с масштабом (Scale)
Функции для работы с масштабом (Scale)
  • Get Actor Scale 3D — возвращает масштаб Актора в мировом пространстве.
  • Set Actor Scale 3D — устанавливает масштаб Актора в мировом пространстве.
  • Get Actor Relative Scale 3D — возвращает относительный масштаб Актора.
  • Set Actor Relative Scale 3D — устанавливает корневому компоненту Актора заданный относительный масштаб.

Transform (трансформация)

Функции для работы с трансформацией (Transform)
Функции для работы с трансформацией (Transform)
  • Add Actor Local Transform — добавляет дельту (смещение) к трансформации (позиция, вращение, масштаб) этого Актора в его локальной системе координат.
  • Add Actor World Transform — добавляет дельту (смещение) к трансформации (позиция, вращение, масштаб) этого Актора в мировом пространстве. Масштаб (Scale) при этом игнорируется и устанавливается в (1, 1, 1).
  • Add Actor World Transform Keep Scale — добавляет дельту (смещение) к трансформации (позиция, вращение, масштаб) этого Актора в мировом пространстве. Масштаб (Scale) при этом не изменяется.
  • Get Transform — возвращает полную трансформацию (позиция, вращение, масштаб) Актора в мировом пространстве.
  • Set Actor Transform — устанавливает для Актора новую трансформацию (позиция, вращение, масштаб) в мировом пространстве.
  • Set Actor Relative Transform — устанавливает для корневого компонента Актора заданную относительную трансформацию (позиция, вращение, масштаб) относительно его родителя.
  • Teleport — мгновенно перемещает Актор в указанную позицию и вращение. Используется для добавления Акторов на уровень или их телепортации в новое место.

Vector (вектора направлений)

Функции для работы с векторами направлений (Vector)
Функции для работы с векторами направлений (Vector)
  • Get Actor Forward Vector — возвращает Forward (X) вектор этого Актора в мировом пространстве. Вектор направления вперед, по оси X, длинной 1.0.
  • Get Actor Right Vector — возвращает Right (Y) вектор этого Актора в мировом пространстве. Вектор направления вправо, по оси Y, длинной 1.0.
  • Get Actor Up Vector — возвращает Up (Z) вектор этого Актора в мировом пространстве. Вектор направления вверх, по оси Z, длинной 1.0.

Attach (иерархия и прикрепление)

Функции для работы с иерархией и прикреплением (Attach)
Функции для работы с иерархией и прикреплением (Attach)
  • Attach Actor To Actor — прикрепляет объект Актора к другому Актору.
  • Attach Actor To Component — прикрепляет объект Актора к конкретному указанному компоненту (класса Scene Component или его производного класса).
  • Detach From Actor — отсоединяет корневой компонент этого Актора от любого Scene Component, к которому он в данный момент присоединён.
  • Detach Root Component From Parent — отсоединяет корневой компонент этого Актора от его родителя. Функция устарела — рекомендуется использовать Detach From Actor.
  • Get Attach Parent Actor — возвращает родительский Actor, к которому прикреплён текущий Актор.
  • Get Attach Parent Socket Name — возвращает имя сокета (точки крепежа) родительского Актора.
  • Get Attached Actors — возвращает массив всех Акторов, прикреплённых к текущему Актору.
  • Get Parent Actor — если этот Актор был создан как дочерний компонент другого Актора, возвращает Актора, которому принадлежит этот компонент.
  • Get Parent Component — если этот Актор был создан как дочерний компонент другого Актора, возвращает ссылку на этот самый компонент (Child Actor Component).
  • Attach Root Component To — позволяет присоединить корневой компонент этого Актора к другому компоненту (Scene Component). Функция устарела — рекомендуется использовать Attach Actor To Component.
  • Attach Root Component To Actor — позволяет присоединить корневой компонент этого Актора к другому Актору. Функция устарела — рекомендуется использовать Attach Actor To Actor.
  • Is Child Actor — используется для проверки, был ли данный Актор создан как дочерний компонент (Child Actor Component).
  • Get All Child Actors — возвращает список всех Акторов, созданных, как дочерние компоненты (Child Actor Component) этого Актора, включая дочерние компоненты дочерних Акторов (рекурсивно).

Component (компоненты)

Функции для работы с компонентами (Component)
Функции для работы с компонентами (Component)
  • Get Component By Class — возвращает первый найденный компонент данного Актора, который соответствует указанному классу.
  • Get Components By Interface — возвращает массив всех компонентов этого Актора, реализующих заданный интерфейс.
  • Get Components By Tag — возвращает массив всех компонентов этого Актора, которые являются наследниками указанного класса и имеют заданный тег.
  • Get Components By Class — возвращает массив всех компонентов этого Актора, которые являются экземплярами указанного класса или его наследников.
  • Add Component By Class — создаёт новый компонент заданного класса и присваивает его текущему Актору.
  • Create Input Component — создаёт и регистрирует новый компонент ввода (Input Component) для данного Актора на основе переданного класса компонента.
  • Find Component By Tag — ищет среди компонентов этого Актора первый компонент, который является экземпляром указанного класса (Component Class) или его наследника и содержит указанный тег (Tag).

Replicates (сеть и репликация)

Функции для работы с сетью и репликацией (Replicates)
Функции для работы с сетью и репликацией (Replicates)
  • Can Trigger Resimulation — определяет, может ли данный объект (обычно Актор или компонент с физическим телом) инициировать повторную симуляцию (Resimulation) при включённом предсказании физики (Physics Prediction).
  • Flush Net Dormancy — используется для немедленного принудительного обновления (репликации) данных для «уснувшего» (Dormant) сетевого Актора, не изменяя его состояние Net Dormancy.
  • Force Net Update — используется для немедленного принудительного обновления (репликации) состояния Актора всем клиентам и демо-нет-драйверам (например, при записи реплеев). 
  • Get Local Role — возвращает роль (Net Role) текущего Актора на локальной машине. Это определяет, какой уровень сетевого контроля (власти) имеет этот Актор именно на данном устройстве — сервере или клиенте.
  • Get Remote Role — возвращает роль (Net Role) этого Актора на удалённой машине (например, на сервере для клиента, или на клиенте для сервера). Это определяет, какой уровень сетевого контроля (власти) имеет удалённая сторона над этим Актором.
  • Get Physics Replication Mode — возвращает текущий режим репликации физики (Physics Replication Mode) для данного Актора.
  • Get Resimulation Threshold — возвращает порог ошибки (в сантиметрах), при превышении которого для данного объекта будет инициирована повторная симуляция физики (Resimulation).
  • Has Authority — возвращает True, если данный Актор имеет сетевую власть (Network Authority) на текущей машине.
  • Set Net Dormancy — переводит Актор в указанный сетевой режим «дремоты» (Dormancy), управляемый перечислением Net Dormancy.
  • Set Physics Replication Mode — позволяет установить режим репликации физики (Physics Replication Mode) для данного Актора.
  • Set Replicate Movement — позволяет включить или отключить репликацию движения для данного Актора.
  • Set Replicates — включает или отключает сетевую репликацию для данного Актора.
  • Tear Off — используется для прекращения дальнейшей сетевой репликации данного Актора от сервера к клиентам.

Input (обработка ввода)

Функции для обработки ввода (Input)
Функции для обработки ввода (Input)
  • Enable Input — позволяет Актору начать получать события ввода (Input Events) от указанного Player Controller.
  • Disable Input — отключает получение событий ввода (Input Events) этим Актором от указанного Player Controller.

Life Cycle (жизненный цикл)

Функции жизненного цикла (Life Cycle)
Функции жизненного цикла (Life Cycle)
  • Spawn Actor from Class — динамически создаёт (порождает) новый экземпляр Актора указанного класса с указанными настройками в игровом мире.
  • Destroy Actor — уничтожает объект Актора в игровом мире.
  • Is Actor Being Destroyed — возвращает информацию, находится ли Actor в данный момент в процессе уничтожения.
  • Get Life Span — возвращает оставшееся время жизни этого Актора в секундах. Если возвращает 0, значит у Актора нет ограниченного времени жизни.
  • Set Life Span — устанавливает время жизни (Life Span) для Актора. После истечения этого времени объект будет автоматически уничтожен, без необходимости ручного удаления. Если установлено значение 0, таймер уничтожения сбрасывается, и Актор уничтожаться автоматически не будет.

Rendering (отрисовка и видимость)

Функции отрисовки и видимости (Rendering)
Функции отрисовки и видимости (Rendering)
  • Get Ray Tracing Group Id — возвращает Ray Tracing Group Id для данного Актора. Этот идентификатор используется в системе трассировки лучей (Ray Tracing) для группировки объектов.
  • Set Ray Tracing Group Id — позволяет задать числовой идентификатор группы Ray Tracing (Ray Tracing Group Id) для данного Актора. Используется для управления группировкой объектов при трассировке лучей (Ray Tracing).
  • Prestream Textures — управляет подгрузкой текстур для всех Mesh-компонентов данного Актора.
  • Set Actor Hidden In Game — визуально скрывает Актор и все его компоненты во время игры, при этом Актор продолжает существовать в мире: его логика, коллизии, триггеры и другие системы остаются активными.
  • Was Recently Rendered — определяет, был ли этот Актор отрендерен (видим на экране) за последние N секунд игрового времени.

Взаимодействие с миром

Функции взаимодействия с миром
Функции взаимодействия с миром
  • Get Actor Bounds — возвращает центр (Origin) и полуразмеры (Box Extent) ограничивающего параллелепипеда (Bounding Box) Актора в мировых координатах.
  • Get Distance To — возвращает расстояние в мировом пространстве между этим Актором и другим Актором.
  • Get Dot Product To — возвращает скалярное произведение (Dot Product) нормализованного вектора от этого Актора к другому Актору и вектора направления этого Актора. Значение показывает, насколько другой Актор находится впереди или позади относительно текущего Актора.
  • Get Horizontal Distance To — возвращает расстояние между этим Актором и другим Актором, игнорируя координату Z (то есть только по горизонтали, в плоскости X-Y).
  • Get Horizontal Dot Product To — возвращает скалярное произведение (Dot Product) нормализованного вектора направления этого Актора и нормализованного вектора от этого Актора к другому Актору, игнорируя координату Z (то есть только в плоскости X-Y). Используется для определения, находится ли другой объект впереди, сбоку или позади относительно текущего Актора в горизонтальной плоскости.
  • Get Level — возвращает ссылку на объект Level, к которому принадлежит данный Актор. Это позволяет узнать, в каком уровне (Level) находится Актор.
  • Get Level Transform — возвращает трансформацию (Transform) уровня, к которому принадлежит данный Актор.
  • Get Overlapping Actors — заполняет переданный массив списком Акторов, которые в данный момент пересекаются (Overlap) с этим Актором (то есть любой компонент этого Актора пересекается с компонентом другого Актора).
  • Get Overlapping Components — заполняет переданный массив списком компонентов (Primitive Component), с которыми этот Актор пересекается (Overlap) в данный момент.
  • Get Squared Distance To — возвращает квадрат расстояния между этим Актором и другим Актором в мировых координатах.
  • Get Squared Horizontal Distance To — возвращает квадрат горизонтального расстояния между этим Актором и другим Актором, игнорируя координату Z (то есть только по X и Y).
  • Get Vertical Distance To — возвращает расстояние между этим Актором и другим Актором только по оси Z (игнорируя координаты X и Y).
  • Is Overlapping Actor — возвращает True, если любой компонент этого Актора пересекается (Overlap) с любым компонентом другого Актора.
  • Make Noise — генерирует шум в игровом мире, который может быть воспринят AI. Работает, только если для Актора (Pawn) добавлен компонент Pawn Noise Emitter Component.

Tick (тики и обновления)

Функции для работы тиками (Tick)
Функции для работы тиками (Tick)
  • Is Actor Tick Enabled — возвращает True, если у этого Актора включено выполнение функции Tick (то есть Актор обновляется каждый кадр).
  • Set Actor Tick Enabled — включает или отключает выполнение функции Tick для этого Актора.
  • Get Actor Tick Interval — возвращает интервал (в секундах) между вызовами функции Tick для этого Актора.
  • Set Actor Tick Interval — задаёт интервал (в секундах) между вызовами функции Tick для этого Актора.
  • Get Tickable When Paused — возвращает True, если данный Актор может выполнять свою функцию Tick даже во время паузы (Pause) в игре.
  • Set Tickable When Paused — задаёт, может ли этот Актор выполнять свою функцию Tick во время паузы (Pause) в игре.
  • Set Tick Group — устанавливает группу тика (Tick Group) для этого Актора.
  • Add Tick Prerequisite Actor — устанавливает зависимость тика: Tick-функция этого Актора будет вызываться только после обновления указанного Актора (Prerequisite Actor).
  • Add Tick Prerequisite Component — устанавливает зависимость тика: Tick-функция этого Актора будет вызываться только после обновления указанного компонента (Prerequisite Component).

Другие функции

Другие функции
Другие функции
  • Get Actor Enable Collision — возвращает True, если для этого Актора разрешено столкновение (Collision) на уровне всего Актора.
  • Set Actor Enable Collision — включает или отключает столкновения (Collision) для всего Актора.
  • Get Actor Time Dilation — возвращает текущий множитель замедления времени (Time Dilation) для этого Актора. Этот множитель влияет на скорость выполнения всех процессов, связанных с этим Актором: движения, анимации, тик и т.д.
  • Get Game Time Since Creation — возвращает количество секунд (в игровом времени), прошедших с момента создания этого Актора.
  • Get Instigator — возвращает указатель на Pawn, который считается инициатором (Instigator) для этого Актора. Instigator — это Pawn (обычно персонаж или контролируемый игроком объект), который создал или запустил этот Актор.
  • Get Instigator Controller — возвращает ссылку на Controller, который является контроллером инициатора (Instigator) этого Актора.
  • Get Owner — возвращает ссылку на Актора, который является владельцем (Owner) данного Актора. Owner — это ссылка на другой Актор, который владеет этим объектом с точки зрения игрового процесса или сетевой логики.
  • Set Owner — устанавливает нового владельца (Owner) для этого Актора, используемого преимущественно для сетевой репликации.
  • Actor Has Tag — проверяет, присвоен ли определённый тег проверяемому объекту Актора.
  • Get Velocity — возвращает вектор скорости (Vector) этого Актора в сантиметрах в секунду, основываясь на состоянии его корневого компонента (Root Component).
  • Get Actor Eyes View Point — возвращает местоположение и направление взгляда (точку зрения) Актора — обычно это «глаза» персонажа, а не положение камеры.

Совет. Вскоре выйдет моя бесплатная книга по Blueprints для Unreal Engine в PDF формате. Как она выйдет, рекомендую её скачать, чтобы Вы детально изучили блюпринты Анрил Энджин.


наш Телеграм канал

Оцените статью
( 1 оценка, среднее 5 из 5 )
Поделитесь этой статьей со своими знакомыми в социальных сетях, возможно, эта статья кому-то будет полезна
Unreal Engine - это просто
Добавить комментарий

Нажимая на кнопку "Отправить комментарий", я даю согласие на обработку персональных данных и принимаю политику конфиденциальности.