Друзья, приветствую, с Вами Будуев Антон. В этой статье мы обсудим Blueprint-функцию (метод) Is Component Tick Enabled в Unreal Engine (UE4, UE5), возвращающую информацию о работе тиков компонента.
Is Component Tick Enabled

Blueprint-функция Is Component Tick Enabled в Unreal Engine — метод класса Actor Component, который возвращает информацию о том, включён ли тик у компонента на данный момент. А именно, возвращает значение True, если тик компонента включён. И False — если выключен.
Функция является pure («чистой», то есть не изменяет никаких данных, просто возвращает значение) и вызывается как из C++, так и из Blueprints.
Перевод официальной справки: функция Is Component Tick Enabled — возвращает, включена ли для этого компонента опция Tick или нет.
Параметры функции
- Target (Actor Component) — ссылка на компонент, для которого необходимо получить информацию о том, включён ли у него тик.
- Return Value (bool) — возвращаемое значение: True (тик включён), False (тик отключён).
Других специфичных параметров у функции нет, так как она просто возвращает текущее состояние работы тика.
Как Is Component Tick Enabled работает внутри
Рассмотрим, как функция IsComponentTickEnabled работает внутри движка Unreal Engine.
1
2
3
4
5
6 bool UActorComponent::IsComponentTickEnabled() const
{
// Возвращаем текущее состояние работы тика из структуры PrimaryComponentTick.
// Это значение указывает, активен ли тик для этого компонента в данный момент.
return PrimaryComponentTick.IsTickFunctionEnabled();
}
Как видно из кода, это очень простой метод, который возвращает состояние флага активности тика компонента из структуры PrimaryComponentTick при помощи специального внутреннего метода этой структуры IsTickFunctionEnabled().
Наш канал «Unreal Engine — это просто» в Telegram, MAX и VK: осторожно, подписка на канал вызывает желание открыть Unreal Editor ;)
Также функция помечена как const, так как не изменяет состояние объекта, а только возвращает значение флага (свойства).
* PrimaryComponentTick — это специальная структура в Unreal Engine, которая используется для управления тиками компонента и содержит внутри себя следующую информацию:
- может ли компонент вообще тикать;
- когда он будет тикать (в какой группе тиков);
- как часто (интервал между тиками);
- есть ли зависимости по тику (должен ли он тикать после другого Актора или компонента).
Собственно, рассматриваемая в этой статье Blueprint-функция Is Component Tick Enabled и возвращает одно из свойств структуры PrimaryComponentTick, а именно, информацию, включён ли тик у компонента или нет.
Смежные функции
- Event Tick — вызывается каждый кадр, если компонент имеет включённый тик. Используется для логики обновления.
- Event Async Physics Tick — вызывается при асинхронном физическом тике (если включено).
- Set Component Tick Enabled — включает или выключает тик компонента.
- Set Component Tick Interval — задаёт интервал между тиками компонента (в секундах).
- Set Component Tick Interval And Cooldown — задаёт интервал между тиками компонента (в секундах), а также устанавливает Cooldown для корректной синхронизации.
- Get Component Tick Interval — возвращает текущий интервал между тиками компонента.
- Set Tick Group — устанавливает группу тиков, определяя порядок выполнения.
- Set Tickable When Paused — определяет, должен ли компонент тикать даже когда игра на паузе.
Пример использования функции Is Component Tick Enabled
C++
Проверка тика пользовательского компонента
1
2
3
4
5
6
7
8
9
10
11 if (MyComponent) // Проверяем существует ли компонент
{
if (MyComponent->IsComponentTickEnabled()) // Проверяем тик компонента
{
UE_LOG(LogTemp, Warning, TEXT("Тик компонента включён"));
}
else
{
UE_LOG(LogTemp, Warning, TEXT("Тик компонента выключен"));
}
}
Blueprints
Рассмотрим небольшой пример включения/отключения тиков компонента передвижения персонажа.
При нажатии на клавишу F (событие Key F) при помощи рассматриваемой функции IsComponentTickEnabled проверяем тики компонента движения персонажа Character Movement:
- если тики включены (функция возвращает True), то функцией Set Component Tick Enabled выключаем их, установив параметр Enabled в значение False;
- если тики выключены (функция возвращает False), то функцией Set Component Tick Enabled включаем их, установив параметр Enabled в значение True.
В результате при движении персонажа при нажатии на клавишу F его движение будет то останавливаться, то вновь возобновляться, так как тики компонента движения Character Movement будут соответствующим образом включаться и выключаться (а работа этого компонента напрямую завязана на них).









