Отправьте статью сегодня! Журнал выйдет 19 июля, печатный экземпляр отправим 23 июля
Опубликовать статью

Молодой учёный

Разработка приключенческой 2D-игры на Unity

Информационные технологии
23.06.2025
1
Поделиться
Библиографическое описание
Молдабай, Ерден Тимурулы. Разработка приключенческой 2D-игры на Unity / Ерден Тимурулы Молдабай, И. А. Самойлова. — Текст : непосредственный // Молодой ученый. — 2025. — № 25 (576). — С. 13-15. — URL: https://moluch.ru/archive/576/127002/.


В эпоху цифровых технологий игровая индустрия переживает бурный рост, становясь одной из самых динамичных и инновационных отраслей. Проектирование и разработка компьютерных игр включает в себя широкий спектр задач: от выбора подходящего игрового движка и проектирования архитектуры до реализации логики игрового процесса, анимации, интерфейса и последующего тестирования. Особый интерес с точки зрения технической реализации представляют 2D приключенческие проекты, сочетающие динамичный геймплей, систему боя, управление персонажем и базовую симуляцию поведения неигровых объектов

Платформа Unity выбрана в качестве основной платформы разработки благодаря своей кроссплатформенности, широким возможностям для создания 2D-графики, встроенной физической модели и поддержке языка программирования C#. Движок предоставляет богатый инструментарий для реализации игровой логики, а также облегчает процесс тестирования и финальной сборки продукта.

Разработка собственной 2D-приключенческой игры позволяет не только изучить этапы создания игрового продукта — от проектирования сюжета и уровней до реализации логики и визуального оформления, — но и получить практические навыки, востребованные в индустрии. В условиях роста инди-геймдева и доступности цифровых магазинов для публикации игр, данная тема приобретает особую актуальность как с образовательной, так и с профессиональной точки зрения.

В процессе работы над проектом выделены ключевые механики, подлежащие реализации: движение персонажа по игровому миру, включая прыжки, смену направления и взаимодействие с элементами окружения; создание врагов и NPC, обладающих различными типами поведения и реагирующих на присутствие игрока; боевая система, предусматривающая возможность атаки, получения урона и взаимодействия с искусственным интеллектом противников; визуализация и анимация, соответствующие действиям и состояниям игровых объектов; интеграция пользовательского интерфейса, отображающего здоровье, урон и другие параметры.

Для начала работы в среде разработки проекта на платформе Unity очень важно начать с первичной установки компонентов и настройки системы для корректной ее работы. Как пример в плане графики для проекта была выбрана игра Stardew Valley, которая сочитает в себе легкий и приятный 2D пиксель арт, с которым удобно будет работать (рисунок 1).

Stardew Valley

Рис. 1. Stardew Valley

Поскольку отрисовка каждого спрайта, локаций, врага, и игровых предметов занимает крайне много времени, было принято решение взять готовые текстуры и ассеты для проекта с платформы itch.io. На данной платформе пользователи имеют возможность ознакомиться с разнообразными спрайтами, доступными как безвозмездно, так и за определённую плату. Нередко создатели игр делятся своими ресурсами в виде комплектов, которые можно легко загрузить и интегрировать в свои разработки

Далее в проект добавляется для будущего игрока набор вводимых действий. Это необходимо для того, чтобы при нажатии клавиш WASD, персонаж двигался в нужном направление по карте. На рисунке 2 приведен С# скрипт для написания кода передвижения главного героя.

Пример создания переменной скорости игрока

Рис. 2. Пример создания переменной скорости игрока

Следущим шагом в проекте является добавление полоски жизни, маны и опыта. И для этого нужно создать скрипт PlayerStates, где будут храниться данные в ScriptableObjects. В Unity это код класса, позволяющий создавать в игре объекты для хранения больших объёмов общих данных, не зависящих от экземпляров скриптов.

Для создания игрового мира и игровых локаций необходимо выбрать все спрайты, которые нужны и поставить их во вкладку Tile Palette. На рисунке 3 представлен пример создания локации — основная деревня с ландшафтом, зданиями и выходами на две другие локацций (зона с врагами и зона с жителями).

Основная деревня

Рис. 3. Основная деревня

Далее в проект добавляются несколько видов моб, которые будут сражаться с игроком, а также их атаки, специфичный урон и также боевая система для главного героя в локациях с врагами (рисунок 4).

Враждебные мобы

Рис. 4. Враждебные мобы

Последним шагом в разработке данного проекта является создание окна прокачки. Оно появляется при нажатии определенной клавиши или автоматически при получении достаточного количества опыта для повышения уровня. В этом окне отображаются ключевые параметры персонажа: уровень персонажа; текущее здоровье (HP); мана (MP); критический урон; накопленный опыт; необходимый опыт для следующего уровня. Также в этом интерфейсе игроку предоставляется возможность распределения очков опыта, заработанных при достижении нового уровня.

Разработка проекта позволила получить обширный опыт в следующих областях: использование движка Unity и среды разработки; создание игровых объектов и интерфейсов; программирование на языке C# в рамках объектно-ориентированной парадигмы; реализация систем прокачки и учета параметров персонажа; проектирование интерактивного пользовательского интерфейса; работа с проектными ресурсами и визуальными ассетами. Игра успешно функционирует и может быть выложена на платформу itch.io как завершенный мини-проект.

Можно быстро и просто опубликовать свою научную статью в журнале «Молодой Ученый». Сразу предоставляем препринт и справку о публикации.
Опубликовать статью
Молодой учёный №25 (576) июнь 2025 г.
Скачать часть журнала с этой статьей(стр. 13-15):
Часть 1 (стр. 1-65)
Расположение в файле:
стр. 1стр. 13-15стр. 65

Молодой учёный