Вступление: Unreal Engine 5 — это действительно сложно.
1. UE5 - это не веб-приложение. Это не CRUD-сервис. Это не фронтенд на React.
2. Миллионы строк кода на C++ в самой кодовой базе движка.
3. Редактор с ручным управлением: большинство действий в UE5 делается через GUI — клики, перетаскивания, настройка параметров вручную.
4. Сложная архитектура: модули, плагины, подсистемы, зависимости между которыми не очевидны.
5. Blueprints: визуальное программирование, которое не очевидно автоматизировать.
6. Высокий порог входа: чтобы писать под UE5, нужно знать C++, архитектуру движка, систему actors, blueprints, render-pipeline.
7. Это не тот проект, где «дал агенту задачу и он сделал». Это проект, где большинство «экспертов по внедрению AI» сказали бы: «Тут автоматизация невозможна. Слишком сложно. Слишком много ручного управления. Слишком много неявных знаний».

И тем не менее. Сейчас на этом проекте AI пишет весь код на C++ сам, дебажит, перезапускает среду выполнения и сам проверяет результат, после чего дает добро проверить человеку. Вся разработка и внедрение фич — это постановка задачи по спеке и контроль в процессе. 98% времени — просто смотрим одним глазом в мониторы. 2% думаем и исправялем что пошло не так.

Проблема: UE5 — редактор с ручным управлением
Главная сложность UE5 для автоматизации — это не отсутствие API. Python в UE5 позволяет вызывать почти всё в редакторе программно. Проблема в другом: цепочки действий очень сложные.
Одно действие в редакторе — это одна команда. Но реальная задача — это цепочка из десятков и сотен действий, которые должны быть выполнены в правильном порядке, с правильными параметрами, с обработкой ошибок на каждом шаге.

Примеры сложных цепочек:
1. Написание блюпринтов в редакторе: создать граф нод, соединить их, настроить параметры, скомпилировать, проверить. Это неочевидный процесс, который требует понимания визуального программирования UE5.
2. Создание и настройка actors: создать actor, добавить компоненты, настроить свойства, привязать к уровню, проверить рендер.
3. Настройка материалов и шейдеров: создать материал, настроить параметры, подключить текстуры, применить к мешу, проверить визуально.
4. Работа с ландшафтом и освещением: создать ландшафт, настроить слои, расставить источники света, запечь освещение.

Каждое из этих действий можно вызвать через Python или напрямую через C++ blueprinted. Но оркестрация цепочки — это нетривиальная задача. Нужны управлять последовательностью действий, обрабатывать ошибки, проверять промежуточные результаты.

Читать далее