Друзья, приветствую, с Вами Будуев Антон. В этой статье мы обсудим Blueprint-функцию (метод) Get Component Tick Interval в Unreal Engine (UE4, UE5), возвращающую информацию об интервале между тиками компонента.
Вскоре выйдет моя бесплатная книга по Blueprints для Unreal Engine в PDF формате. Как она выйдет, рекомендую её скачать, чтобы Вы детально изучили блюпринты Анрил Энджин.
Get Component Tick Interval

Blueprint-функция Get Component Tick Interval в Unreal Engine — вспомогательный метод (Getter, геттер) класса Actor Component, который возвращает интервал между тиками компонента. Это значение указывает, как часто будут вызываться тики, если компонент зарегистрирован и его тик включён.
Функция используется для получения текущего значения интервала между тиками компонента (Tick Interval). Это позволяет узнать:
- вызывается ли тик каждый кадр (если возвращаемое значение меньше или равно нулю);
- вызывается ли тик с заданным интервалом (если возвращаемое значение больше нуля).
Функция является pure («чистой», то есть не изменяет никаких данных, просто возвращает значение) и доступна как в C++, так и в Blueprints
Перевод официальной справки: функция Get Component Tick Interval — возвращает интервал между тиками основной тик-функции компонента.
Параметры функции
- Target (Actor Component) — ссылка на компонент, для которого необходимо возвратить интервал между тиками.
- Return Value (float) — возвращаемое значение: текущий интервал тиков компонента в секундах. Если значение равно 0, тик происходит каждый кадр, если больше 0, тик происходит с этим интервалом.
Как Get Component Tick Interval работает внутри
Кратко рассмотрим, как функция Get Component Tick Interval работает внутри движка Unreal Engine:
- Функция очень простая. Она возвращает значение поля TickInterval, которое хранится в структуре PrimaryComponentTick текущего компонента.
* PrimaryComponentTick — это специальная структура в Unreal Engine, которая используется для управления тиками компонента и содержит внутри себя следующую информацию:
- может ли компонент вообще тикать;
- когда он будет тикать (в какой группе тиков);
- как часто (интервал между тиками);
- есть ли зависимости по тику (должен ли он тикать после другого Актора или компонента).
Смежные функции
- Event Tick — вызывается каждый кадр, если компонент имеет включённый тик. Используется для логики обновления.
- Event Async Physics Tick — вызывается при асинхронном физическом тике (если включено).
- Is Component Tick Enabled — проверяет, включён ли тик компонента.
- Set Component Tick Enabled — включает или выключает тик компонента.
- Set Component Tick Interval — задаёт интервал между тиками компонента (в секундах).
- Set Component Tick Interval And Cooldown — задаёт интервал между тиками компонента (в секундах), а также устанавливает Cooldown для корректной синхронизации.
- Set Tick Group — устанавливает группу тиков, определяя порядок выполнения.
- Set Tickable When Paused — определяет, должен ли компонент тикать даже когда игра на паузе.
Пример использования функции Get Component Tick Interval
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 // Где-то в вашем Акторе или другом компоненте
// Проверяем, существует ли компонент и включен ли у него тик.
if (MyComponent && MyComponent->IsComponentTickEnabled())
{
// Получаем текущий интервал тика компонента в секундах.
float CurrentInterval = MyComponent->GetComponentTickInterval();
// Проверяем, тикает ли компонент с фиксированным интервалом (больше 0).
if (CurrentInterval > 0.0f)
{
// Если интервал больше 0, значит, компонент тикает с фиксированной периодичностью.
UE_LOG(LogTemp, Warning, TEXT("Компонент тикает с интервалом %.2f сек"), CurrentInterval); // Выводим интервал тика в лог.
}
else
{
// Если интервал равен 0, компонент тикает каждый кадр (Frame Tick).
UE_LOG(LogTemp, Warning, TEXT("Компонент тикает каждый кадр")); // Выводим сообщение в лог.
}
}
else
{
// Если компонент не существует (MyComponent == nullptr) ИЛИ тик компонента отключен.
UE_LOG(LogTemp, Warning, TEXT("Тик компонента отключен")); // Выводим сообщение в лог.
}
Blueprints

- Событие Key F (нажатие клавиши):
— это событие отслеживает нажатие клавиш на клавиатуре;
— в данном случае событие срабатывает при нажатии клавиши F. - Функция GetComponentTickInterval:
— получает текущий интервал между вызовами функции Tick для выбранного компонента;
— параметр Target указывает на компонент, для которого нужно получить интервал тика (в данном случае указан компонент AC_MyActorComponent). - Вывод значения интервала на экран (Print String):
— полученное значение интервала тика (Return Value) передаётся в функцию Print String, которая, в свою очередь, выводит это значение на экран во время выполнения игры. - Логика выполнения:
— когда пользователь нажимает клавишу F, срабатывает событие Key F;
— после этого вызывается функция GetComponentTickInterval, которая получает текущий интервал тика для компонента AC_MyActorComponent;
— полученное значение интервала тика затем передаётся в функцию Print String, которая выводит его на экран. - Зачем это делается? Этот фрагмент Blueprint позволяет отладить или проверить текущее значение интервала тика компонента во время выполнения игры. Это может быть полезно для:
— отладки поведения компонента;
— проверки, как изменяется интервал тика при различных условиях;
— проверки корректности настройки интервала тика.
Совет. Вскоре выйдет моя бесплатная книга по Blueprints для Unreal Engine в PDF формате. Как она выйдет, рекомендую её скачать, чтобы Вы детально изучили блюпринты Анрил Энджин.