Урок #6 — Работа с Blueprints в UE

Построение большей части функционала в Unreal Enngine происходит за счет Blueprint. Это специальные блоки, что позволяют указать действия для любого объекта, материала, звука, анимации и прочего. За урок мы научимся использовать Blueprint для объектов.
Видеоурок
Что такое no code?
No code или zero-code – дословно переводится, как отсутствие кода или ноль кода. В действительности так и есть. Код необходим для описания цифрового продукта. Даже стартовая страница поисковой системы Google, которая предстает перед пользователем в виде логотипа и поля для поиска, на самом деле скрывает под собой код. В нем прописывается весь алгоритм и набор команд для работы по заданному сценарию.
Но программирование – это достаточно сложно, особенно для новичка. Нужно долго учиться, а в работе постоянно задумываться об архитектуре, продумывать и реализовывать каждый элемент отдельно, а затем выстраивать между ними взаимосвязи.
А вот no-code – это просто. Все состоит из готовых элементов, которые достаточно собрать, как конструктор Lego. Человек, который этим занимается, может себе позволить не иметь никакого понятия ни про один язык программирования.
Unreal Engine и Blueprints
Unreal Engine в плане no code подхода ушел очень далеко. Через движок вы можете создавать вполне крутые проекты без использования единой строчки кода.
К любому объекту можно добавить Blueprint и указать Node-блоки, что будут описывать функциональную часть. Так вы можете настроить звук, свет, физику, материал объекты и прочие характеристики.
Как собрать проект на c++ под UE5 или почему столько ошибок?

Короче, есть UE5, есть VS2022. При попытке собрать проект(базовый, не что то серьезное, а просто mew class -> character -> открывает vs и я жму сборку. По роликам все работает так, но у меня выдает ошибки следующие

Решить ошибку с компиляцией, как я понял можно введя в папке с батником в cmd:
— Build.bat -Target=»UE4Editor Win64 Development» -Target=»ShaderCompileWorker Win64 Development» -Quiet -WaitMutex -FromMsBuild, но при вводе данной команды он выдает другую ошибку:
и вот как ее исправлять я не смог найти. Что такое этот целевой файл, где он должен быть ?, пишут что это возникает если проект и сама программа в 1 папке, но у меня в 2 разных и тут я не знаю как решить.
- Вопрос задан более года назад
- 364 просмотра
3 комментария
Простой 3 комментария
Unreal Engine — компиляция всех Blueprints в проекте. Как, а главное — зачем
Простой инструмент, который позволяет отслеживать «здоровье» проекта, ловить баги на ранних этапах и точнее определять момент возникновения ошибки.
Ошибки/предупреждения времени компиляции могут возникать не только во время непосредственной работы с blueprint, но и в результате внешних изменений, таких как:
- Изменение типа/спецификаторов доступа/метаинформации переменной/метода;
- Изменение сигнатуры метода;
- Удаление переменной/метода;
- Удаление файлов, на которые ссылается blueprint;
- И многое, многое другое.
Иногда в качестве внешнего фактора выступают творческие коллеги https://blueprintsfromhell.tumblr.com/image/182038609701
При этом если затронутая логика используется редко, ошибка может жить незамеченной в течение долгого времени.
К счастью для нас, инженеры Epic снабдили свой движок полезным инструментом, который позволяет проверить все blueprints проекта на наличие ошибок/предупреждений.
CompileAllBlueprints
Дисклеймер:
Я буду указывать полные пути до файлов так, как они расположены у меня в системе.
Не забывайте менять на подходящие в вашем случае. 🙂
Для запуска понадобятся:
1. UE4Editor-Cmd.exe, найти можно по адресу
C:\Program Files\Epic Games\UE_4.26\Engine\Binaries\Win64\UE4Editor-Cmd.exe
2.. uproject файл проекта, лежит в корне, в моем случае
C:\Games\UnrealProjects\Nice\Nice.uproject
3. Терминал/командная строка/текстовый редактор — в зависимости от того, как вы будете запускать проверку.
Способ 1 — запуск из командной строки
Здесь все просто — открываем любимый терминал и вызываем
«C:\Program Files\Epic Games\UE_4.26\Engine\Binaries\Win64\UE4Editor-Cmd.exe» «C:\Games\UnrealProjects\Nice\Nice.uproject» -run=CompileAllBlueprints -ShowResultsOnly
По экрану поползут логи компиляции. В зависимости от размера проекта процесс может занимать от десятка секунд до нескольких минут.
Если все хорошо, ближе к концу простыни лога появится воодушевляющее сообщение
В противном случае программа подскажет не только файлы с ошибками, но и сами ошибки (в данном случае я создал bool переменную, использовал ее в branch ноде, после чего переменную удалил из variables, но оставил в редакторе):
[2021.12.21-16.16.47:187][ 0]LogCompileAllBlueprintsCommandlet: Display: =================================================================================== Compiling Completed with 1 errors and 0 warnings and 0 blueprints that failed to load. =================================================================================== [2021.12.21-16.16.47:189][ 0]LogInit: Display: [2021.12.21-16.16.47:190][ 0]LogInit: Display: Warning/Error Summary (Unique only) [2021.12.21-16.16.47:190][ 0]LogInit: Display: ———————————— [2021.12.21-16.16.47:190][ 0]LogInit: Display: LogBlueprint: Error: [AssetLog] C:\Games\UnrealProjects\Nice\Content\Blueprints\StatusEffects\BP_NiceStatusEffect_Strength.uasset: [Compiler] In use pin Test Bool no longer exists on node Get . Please refresh node or break links to remove pin. from Source: /Game/Blueprints/StatusEffects/BP_NiceStatusEffect_Strength.BP_NiceStatusEffect_Strength
Способ 2 —. bat
Каждый раз запускать консоль, вспоминать/вводить/копировать длинные пути до нужных файлов — то еще удовольствие. Намного проще один раз задать все в скрипте и запускать проверку двойным кликом по файлу.
Поэтому в корне проекта я создал compileBP.bat с таким содержанием (на самом деле не совсем, но это детали):
@echo off set UE4EDITORCMD_EXE=C:\Program Files\Epic Games\UE_4.26\Engine\Binaries\Win64\UE4Editor-Cmd.exe set UPROJECT_PATH=C:\Games\UnrealProjects\Nice\Nice.uproject call «%UE4EDITORCMD_EXE%» «%UPROJECT_PATH%» -run=CompileAllBlueprints -ShowResultsOnly pause
Его запуск открывает окно cmd.exe с логами. После завершения проверки окно любезно подождет пользовательского ввода.
Способ 3 — парсинг файла логов
Можно заметить, что полезной информации в логах едва наберется на 5 строчек, так зачем любоваться на все остальное, когда машина может отфильтровать нужное?
Для удобства и облегчения автоматизации процесса можно задать имя файла, в который будет сохраняться лог исполнения. Для этого достаточно к основной команде добавить аргумент -log=BPCompileLog.txt (имя файла можете заменить по вкусу).
@echo off set UE4EDITORCMD_EXE=C:\Program Files\Epic Games\UE_4.26\Engine\Binaries\Win64\UE4Editor-Cmd.exe set UPROJECT_PATH=C:\Games\UnrealProjects\Nice\Nice.uproject call «%UE4EDITORCMD_EXE%» «%UPROJECT_PATH%» -run=CompileAllBlueprints -ShowResultsOnly -log=BPCompileLog.txt
А дальше все зависит только от вашей фантазии. Для рабочего проекта я остановился на следующей последовательности:
- Каждый коммит, затрагивающий код, запускает проверку на тестовой машине;
- В случае обнаружения ошибок собирается информация о файлах с дефектами, а также коммитах (номер, пользователь и комментарий), совершенных с момента предыдущей проверки;
- Информация отправляется в Slack с человекочитаемым форматированием;
- Если ошибок не найдено, но предыдущая проверка закончилась неудачей, отправляется сообщение о том, что ошибки были исправлены.
Такие дела. Буду рад ответить на вопросы и обсудить трудности автоматизации в геймдеве. 🙂
Unreal Engine: что нужно знать новичку о «слишком сложном» ПО, на котором создаются шедевры

Чтобы реализовать мобильную игру именно так, как это было задумано, стоит выбрать движок еще на стадии проработки идеи. Бесплатное ПО Unreal Engine популярно среди разработчиков благодаря универсальности платформы – функционал позволяет реализовать даже игру ААА-уровня, что недоступно во многих других бесплатных движках.
Хотя изначально движок предназначался для разработки шутеров от первого лица, сейчас на нем создают MMORPG, файтинги и даже стелсы. Об эволюционном пути движка, правилах выбора проекта для UE, а также сильных и слабых сторонах ПО поговорим далее.
Движок Unreal Engine: характеристики ПО и требования к оборудованию разработчика
Движок Unreal Engine был разработан в 1996 году командой разработчиков Epic Games и работает на основе языка программирования C++. Первой разработанной на платформе игрой стал шутер от первого лица Unreal, а сам движок распространялся на платной основе по модели ежемесячной подписки.
Только с 2015 года UE стал условно бесплатным, но пользователи движка все же обязаны выплачивать роялти в размере 5%, когда игра выходит в релиз. Благодаря языку программирования C++ на движке можно без проблем делать игры для:
- Windows;
- Mac OS;
- Linux;
- Xbox;
- PlayStation;
- Wii;
- Dreamcast и других платформ.
В последние годы мобильные платформы стали одним из приоритетных направлений геймдева на Unreal Engine, поэтому разработка для iOS и Android также поддерживается. Вы можете сравнительно быстро импортировать игру с одной платформы на другую за счет модульной системы зависимых компонентов.
На данный момент последней является версия Unreal Engine 5, в которую разработчики добавили новые функции. Но системные требования остались на уровне UE 4, а это значит, что для тестирования драфта игры нужен следующий комплект «железа»:
- процессор – 4 ядра с частотой 2,5 GHz или выше;
- оперативная память – не менее 8 GB;
- видеокарта – любая, поддерживающая DirectX 11.
Впрочем, движок постоянно обновляется и совершенствуется, Epic Games выпускает новые паки и оптимизирует среду разработки под новые устройства. Главной задачей Unreal Engine является упрощение создания качественного проекта, в том числе с играбельным и стабильным мультиплеером. Масса ассетов и возможность контролировать не только механику, но и графику игры – одни из главных особенностей UE.

Среди других характеристик, которые отличают данный движок от других, можно выделить:
- Полный инструментарий «из коробки». Вам нужно лишь установить среду разработки и запустить ее – все нужные функции уже будут в Unreal Engine.
- Разработка на C++. Данный язык программирования, хоть и является более сложным для освоения, чем те же C# или Python, но работает гораздо быстрее. Это повышает качество и производительность проекта в финальной версии.
- Визуальное создание скриптов. Система Blueprints Visual Scripting позволяет создавать игры, даже тем, кто не знает язык C++. И хотя для лучшего результата код все же придется править под себя, скорость создания базовых объектов удастся значительно повысить.
Таким образом, постоянное улучшение Unreal Engine позволяют разработчику получить максимальный уровень качества мобильных продуктов при минимальных затратах сил и времени.
UE5: какие сюрпризы подготовили создатели платфомы для пользователей новой версии
Логичным эволюционным шагом в развитии Unreal Engine стала 5-я серия движка, выпущенная в 2021 году. По словам Epic Games, она вывела ПО на новый уровень фотореализма – это было главной целью обновления. Но это отнюдь не все важные нововведения:
- Nanite. Под этим названием была презентована виртуализированная геометрия с микрополигонами, исключающая неприятное явление «бюджета на полигоны». Данная геометрия позволяет показывать в кадре геометрию кинематографического качества, которая имеет миллионы и миллиарды полигонов.
- Lumen. Еще одна фича для детальной картинки, которая представляет собой абсолютно динамическое глобальное освещение. При помощи системы Lumen картинка реагирует на изменения сцены и условий освещения, то есть падение лучей света в игре будет меняться в реальном времени. Алгоритм сам просчитает интенсивность, угол освещения, а художнику останется только скорректировать нюансы.
- Симуляция реверберации звука. Если говорить проще, то в UE5 завезли реалистичное эхо, которое работает в замкнутых пространствах. Звук постепенно угасает, а система просчитывает это индивидуально, исходя из параметров прорисованной площади.
- Улучшенный физический движок. Тут все проще – законы природы работают более корректно, модели персонажей двигаются реалистичнее, а физика работает так, как и в реальном мире.
- Новая симуляция поведения жидкостей. Система позволяет создавать зрелищные сцены с жидкостями и повышать реалистичность картинки. В сравнении с предыдущим поколением UE, теперь разные жидкости имеют разные параметры, а значит атмосферность картинки повышается многократно.
Если говорить о том, для каких проектов можно выбрать Unreal Engine, ответ будет простым – для любых. Неважно, будет это простая карточная 2D-игра или полноценная ААА-проект – UE обеспечит быстрый процесс разработки с огромным набором ассетов и вспомогательных систем.
Знание языка C++ несомненно потребуется для подгонки нюансов и персонализации, но интуитивный механизм добавления объектов позволит проработать игровой мир гораздо быстрее, чем на движках-аналогах. Таким образом, при желании получить результат с отличной графикой, реалистичной физикой и стабильностью работы стоит выбирать именно Unreal Engine.
Новичкам на заметку
В сторону Unreal Engine редко смотрят новички, а все из-за того, что на первый взгляд интерфейс кажется слишком сложным. Но стоит посвятить его изучению чуть больше времени, и в итоге вы получите отличный инструмент для любых творческих задач.
- Изучите доступные на платформе демо и шаблоны (вкладка Online Learning). Выполняя инструкции в уроках вы сможете создать свой первый проект и поделиться им с друзьями.
- Создайте игру на основе бесплатных шаблонов и только потом начинайте ее персонализировать и обновлять.
- Воспользуйтесь бесплатным продуктом для визуального программирования Blueprint – с его помощью вы сможете собрать код из готовых частей, не боясь опечататься или что-то напутать.
- Не ждите идеального результата. Вряд ли у вас с первого раза получится игровой шедевр – для этого нужны опыт, знания и полноценная команда. Поэтому смотрите на тестовые проекты, как на источник бесценного опыта.
- Развивайте продукт постепенно. Не стремитесь к полноценной ААА-игре, сверстанной «на коленке», это в принципе невозможно. Создайте что-то, что будет соответствовать понятию минимально жизнеспособного проекта.
- Идите на игровые джемы. Соревнования по разработке игр дисциплинируют и учат создавать рабочий продукт за минимально возможные сроки. К тому же, на джемах можно найти единомышленников и даже собрать команду для дальнейшей работы над игрой.
- Работайте регулярно. Начав работу над проектом, не откладывайте его в долгий ящик и не допускайте больших пауз. Даже если вам кажется, что затея провальная – изучайте движок и экспериментируйте.
- Подпишитесь на блоги опытных разработчиков, которые щедро делятся опытом и идеями. Видео-уроки могут помочь найти ответы и вдохновение.
Наши советы помогут начать работу с Unreal Engine, но при этом могут использоваться и для других движков. Отличаются только технические моменты разработки, но тут все зависит от ваших потребностей и ожиданий. О работе с движком Unity мы рассказывали в одном из наших материалов.
У Unreal Engine есть как плюсы, так и минусы, которые имеют индивидуальный оттенок, ведь в зависимости от проекта важны разные характеристики. Впрочем, список преимуществ можно построить следующим образом:
- Весь код проекта пишется на С++, есть встроенный графический редактор Blueprints.
- ПО максимально стабильно, разработчик может рассчитывать на полное отсутствие багов.
- Unreal Engine одинаково хорошо подходит как для проработки кинематографических спецэффектов, так и видеоигр.
- Пользоваться UE и всем его функционалом можно абсолютно бесплатно. Но не забывайте, что роялти от продаж успешной игры выплатить все же придется (при обороте в более, чем 100 000 $).
Но при этом веские минусы данного движка тоже имеются:
- Высокая цена на контент для геймдева. Несмотря на обилие бесплатных файлов, часто стоимость нужных предметов достигает 100 $.
- Сложный интерфейс. Этот минус – лишь дело привычки, как только вы сориентируетесь в функциях и привыкнете к меню, сможете оперативно использовать все возможности.
- Требовательность к «железу». При написании кода сложно заметить прожорливость движка, но для обработки неоптимизированной графики потребуются серьезные мощности.
- Большой «вес» ПО – более 20 ГБ.
На Unreal Engine были созданы множество глобальных и красивых игр для мобильных устройств. Пятерка наиболее известных продуктов, которые вдохновят нас на создание собственного проекта:
- Fortnite.
- PES 2020.
- Lineage 2: Revolution.
- Heroes Reborn: Enigma.
- PUBG Mobile.
Чтобы быстрее и продуктивнее освоить Unreal Engine, новички могут использовать ряд рекомендованных ресурсов: YouTube-канал от разработчиков движка, онлайн-курсы по геймплею и графике.
Следите за обновлениями блога! Мы готовим еще много интересных материалов для начинающих разработчиков, которые только планируют ворваться в мир геймдев.