Данная работа рассматривает методологии проектирования игровых систем на существующем игровом движке. В качестве примера движка используется Unreal Engine 5 (далее возможно сокращение UE).
Unreal Engine не только является мощным и популярным инструментом создания игровых проектов для студий абсолютно разных размеров во всем мире, но также в настоящее время представляет собой один из самых дружелюбных для новичков игровых движков, поскольку большое внимание уделяет своему UI (User Interface, интерфейс взаимодействия с пользователем), делая его современным и удобным для использования, а также благодаря развитой встроенной системе визуального программирования (Blueprints, далее возможно использования слова блюпринты), которая позволяет гораздо проще проектировать игровую логику людям, ранее не знакомым с классическим программированием.

UE Blueprints nodes. Источник изображения: https://umbra.ai/blueprint-mastery-the-50-essential-nodes-in-unreal-engine-you-need-to-know/
Выбор этого предмета для исследования был сделан в связи с недостаточностью материалов по выбранной теме в игровой индустрии.
Большинство обучающих материалов и курсов концентрируют свое внимание на изучении базового функционала игрового движка или на углубленном разборе конкретной системы, при этом оставляя за кадром вопрос подходов к написанию сложной игровой логики.
Работа является суммаризацией практического и исследовательского опыта и ставит своей целью ответить на два вопроса:
— Как писать комплексные игровые системы на UnrealEngine?
— Как делать сложные системы удобными и доступными для команды разработки игрового проекта?
Ответы на данные вопросы будут полезны как начинающим разработчикам, которые хотят перейти от основ к более серьезным механикам, так и начинающим студиям, которые планируют создание своего первого полноценного игрового продукта.
В работе будет рассмотрено:
— 1 глава. Принцип написания отдельно взятой игровой системы.
— 2 глава. Подходы к разработке комплекса связанных геймплейный структур.
— 3 глава. Инструменты и методы адаптации написанных систем к дальнейшей разработке проекта.
