Добавить в корзинуПозвонить
Найти в Дзене

Визуальный регистратор Unreal Engine

Visual Logger, или сокращенно VisLog, — это мощный инструмент профилирования, который позволяет вам легко захватывать, визуализировать и отлаживать внутриигровые события. Он обычно используется с визуализацией отладки ИИ, однако он отлично подходит для множества других вариантов использования, таких как — Курс «Создание мультиплеерной игры на Unreal Engine» Базовый курс «Unreal Engine 5» Курс «Создание игр на Unreal Engine 5» Открыть Visual Logger можно двумя способами: Визуальный регистратор можно открыть из строки меню редактора. 1. Панель меню Найдите строку меню в верхней части редактора Unreal Engine. 2. Инструменты В строке меню редактора щелкните по нужной Toolsопции. 3. Отлаживать В Toolsменю выберите нужную Debugопцию. 4. Визуальный регистратор В Debugменю нажмите кнопку Visual Logger, чтобы открыть окно Visual Logger. Используйте VisLogконсольную команду, чтобы открыть окно Visual Logger. Нет. VisLog записывает данные только тогда, когда он включен. Используйте эту Enable V
Оглавление

Visual Logger, или сокращенно VisLog, — это мощный инструмент профилирования, который позволяет вам легко захватывать, визуализировать и отлаживать внутриигровые события. Он обычно используется с визуализацией отладки ИИ, однако он отлично подходит для множества других вариантов использования, таких как —

  • Прогнозируемые пути актеров
  • Следы столкновений
  • Траектории атаки/снаряда
  • Отладка сети (сравнение данных клиентов и сервера)
  • Использование с системой запросов окружающей среды (EQS)
  • И т. д.
Курс «Создание мультиплеерной игры на Unreal Engine»
Базовый курс «Unreal Engine 5»
Курс «Создание игр на Unreal Engine 5»

Как открыть Visual Logger?

Открыть Visual Logger можно двумя способами:

Метод 1 — Панель меню

Визуальный регистратор можно открыть из строки меню редактора.

1. Панель меню

Найдите строку меню в верхней части редактора Unreal Engine.

2. Инструменты

В строке меню редактора щелкните по нужной Toolsопции.

3. Отлаживать

В Toolsменю выберите нужную Debugопцию.

4. Визуальный регистратор

В Debugменю нажмите кнопку Visual Logger, чтобы открыть окно Visual Logger.

-2

Метод 2 — Консольная команда

Используйте VisLogконсольную команду, чтобы открыть окно Visual Logger.

-3

VisLog записывает по умолчанию?

Нет. VisLog записывает данные только тогда, когда он включен.

Используйте эту Enable VisLog Recordingфункцию для включения и выключения VisLogging.

-4
FVisualLogger& VisualLogger = FVisualLogger::Get();VisualLogger.SetIsRecording(true);

Как фиксировать события VisLog?

Существует множество функций и методов, которые могут быть использованы в событиях VisLog. Вот несколько распространенных —

Расположение VisLog

Функция VisLog Location регистрирует конкретное местоположение, представленное в виде сферы с указанным радиусом.

Эта функция может быть полезна для визуализации —

  • следы удара
  • расположение объектов/данных
  • пути вдоль сегментов
  • и т. д.

Как фиксировать события VisLog?

Существует множество функций и методов, которые могут быть использованы в событиях VisLog. Вот несколько распространенных —

Расположение VisLog

Функция VisLog Location регистрирует конкретное местоположение, представленное в виде сферы с указанным радиусом.

Эта функция может быть полезна для визуализации —

  • следы удара
  • расположение объектов/данных
  • пути вдоль сегментов
  • и т. д.
-5

Сегмент VisLog

Функция VisLog Segment записывает строку с указанным начальным и конечным положением.

Эта функция может быть полезна для визуализации —

  • расстояние между объектами
  • траектории и пути

-6

Текст VisLog

Функция VisLog Text полезна для регистрации простой текстовой строки, идеально подходящей для сбора данных, относящихся к определенному событию.

-7

Формы VisLog

При использовании C++ доступен широкий спектр форм для визуализации, что позволяет вам представлять практически все. Хотя большинство этих форм не доступны напрямую в Blueprints, их можно использовать в Blueprints, что обеспечивает еще большую гибкость.

UE_VLOG_BOX

-8

UE_VLOG_CONE

-9

UE_VLOG_ARROW

-10

UE_VLOG_CIRCLE

-11

UE_VLOG_CYLINDER

-12

И многое другое…

Хотя я и рассказал о самых распространенных, я хочу хотя бы упомянуть об интересных.

Есть еще несколько макросов C++, которые могут оказаться полезными —

UE_VLOG_MESH

Макрос UE_VLOG_MESHиспользуется для рисования пользовательской сетки с использованием вершин и индексов. Полезно для отладки проблем, связанных с коллизиями или навигацией.

Функции скриптинга процедурной сетки и геометрии весьма полезны при использовании этого макроса.

-13

UE_VLOG_HISTOGRAM

Макрос UE_VLOG_HISTOGRAM используется для рисования гистограммы на области просмотра, которая представляет статистическое распределение набора данных. Его можно использовать для визуализации распределений данных (например, распределения веса принятия решений ИИ, изменения атрибутов персонажей и т. д.)

Примечание: для визуализации гистограммы обязательно включите опцию «Графики» в Visual Logger.

-14

UE_VLOG_CONVEXPOLY

Макрос UE_VLOG_CONVEXPOLY используется для рисования 2D-выпуклого полигона. Его можно использовать для визуализации областей или регионов (например, навигация, прокладка маршрута, прицел и т. д.)

-15

UE_VLOG_EVENT_WITH_DATA

Макрос UE_VLOG_EVENT_WITH_DATA используется для предоставления пользовательских данных на основе событий в Visual Logger. Его можно использовать для записи определенных событий или действий с соответствующими данными, предоставляя больше контекста для отладки и анализа.

-16

UE_VLOG_EQS

Макрос UE_VLOG_EQS используется для регистрации данных, относящихся к системе запросов окружающей среды (EQS), которая сама по себе является системой запросов к окружающей среде для принятия решений на основе ИИ.

В частности, этот макрос регистрирует результаты запросов EQS, предоставляя информацию о принятии решений ИИ.

Как начать работу с Visual Logger в C++?

К счастью, начать работу с Visual Logger в C++ довольно просто. Вот несколько фрагментов кода, с которых можно начать —

Включать

Это необходимое включение C++ для Visual Logger.

#include "VisualLogger/VisualLogger.h"

Определить статический журнал

При работе с VisLogging вам может потребоваться определить конкретный тип журнала.

DEFINE_LOG_CATEGORY_STATIC( LogUDVisLog, Log, All )

Сорт

Класс, используемый для вызова функций VisLog.

FVisualLogger

Пример

Вот минимальный жизнеспособный пример рисования блока VisLog.

Пример.cpp

#include "VisualLogger/VisualLogger.h"
DEFINE_LOG_CATEGORY_STATIC( LogUDVisLog, Log, All )
AUDVisLogExample::Example()
{
#if ENABLE_VISUAL_LOG
if (!FVisualLogger::IsRecording()) { return; }
const UWorld* World = GetWorld();
if (!World) { return; }
const FVector BoxLocation = GetActorLocation() + FVector(500.0f, 0.0f, 0.0f);
const FVector BoxExtent(100.0f, 100.0f, 100.0f);
const FBox Box(BoxLocation - BoxExtent, BoxLocation + BoxExtent); UE_VLOG_BOX(World, LogUDVisLog, Log, Box, FColor::Blue, TEXT("Draw Box"));
#endif
}

Онлайн курсы по Unreal Engine 5: