Игры-платформеры — популярный и доступный жанр для начинающих гейм-девелоперов. Они отличаются простотой в игровой механике, 2D-геймплеем и доступностью графических решений. Поэтому их часто используют в качестве выпускных и практических работ студенты.
Поэтапно рассмотрим процесс разработки игры на примере платформера CHRONOCRASH, который разработали студенты Skillfactory для компании Motorica.
Платформеры: поджанры и особенности
Платформеры — это жанр игр, где игрок перемещается в пространстве, преодолевает препятствия, прыгает между платформами и побеждает врагов. Среди известных платформеров — легендарные Super Mario, Sonic the Hedgehog, Rayman.
Есть несколько игровых поджанров в этом направлении:
- Классические платформеры. Задача персонажа в таких играх строится вокруг преодоления препятствий и перемещения между платформами. Ситуативно встречаются сражения с врагами. Наиболее яркий пример этого поджанра — серия Super Mario.
- В экшн-платформерах фокус смещается с перемещения игрока по уровню на боевые элементы. Арсенал оружия и комбоудары становятся разнообразнее и важнее для игровой механики. Пример — Ratchet & Clank, где главный герой Рэтчет и его верный соратник Кланк сражаются против врагов: императора Тахиона, Императора Нефариуса и Близнецов Прог.
- Пазл-платформеры предлагают игрокам решать головоломки и проходить испытания, используя логику и вдумчивый геймплей. Лидеры жанра Limbo и Inside покорили аудиторию не только загадками, но и неповторимой атмосферой.
- Roguelike-платформеры или «рогалики» отличаются высокой реиграбельностью. Как правило, в таких проектах используется процедурная генерация уровней и случайных событий. Из популярных примеров назовем The Binding of Isaac и Dead Cells.
Жанр игры, без сомнения, будет определять некоторые особенности разработки продукта. CHRONOCRASH, на примере которой мы будем рассматривать этапы создания игры, относится к roguelike-платформерам. Такой жанр определен ее назначением. Особенности проекта также определили его внешний вид.
Как сделать 2D-платформер на Unity
Цикл разработки игры
Глобально разработка игры любого жанра состоит из нескольких этапов. Создание проекта начинается с питча — краткой презентации идеи для оценки ее потенциала. Питч проводит CEO компании или стартапа. Зрителями могут быть команда или потенциальные инвесторы.
После питчинга начинается анализ рынка и целевой аудитории. По его итогам команда собирает исчерпывающее описание концепции, включающее основные механики и дизайн.
Когда концепция утверждена, начинается разработка: программисты, дизайнеры и художники воплощают идею в игру. Далее следует тестирование, которое помогает выявить и исправить баги.
Для проверки реакции аудитории часто проводится soft launch — ограниченный запуск игры. После доработки игра выходит в релиз. Но и тут работа над проектом не заканчивается.
После релиза команда занимается поддержкой игры и выпуском обновлений. После завершения проект могут пересмотреть, вернуть разработку к этапу питча для дальнейшего улучшения.
Подробнее об этих этапах можно прочитать в статье «Инди-игры: как создать свой первый проект».
Дальше рассмотрим процессы, относящиеся непосредственно к созданию 2D-платформера на Unity.
Этап 1: формируем идею и концепт
На старте стоит сформулировать ключевые аспекты игры: сюжет, сеттинг, механики и целевую аудиторию. Для этого ответьте на вопросы:
- В каком мире будет происходить игра?
- Кто главный герой и какова его цель?
- Какие уникальные игровые механики будем использовать?
- Какой поджанр подойдет проекту?
- Какие потребности целевой аудитории закрывает игра?
Удобнее всего оформить концепцию в формате презентации. Здорово, если получится представить в документе отдельные элементы геймплея. Качественная работа на этом этапе поможет команде подготовиться к питчу и избежать ошибок в продвижении игры.
В CHRONOCRASH логика мира и механика игры фокусируют пользователя на задачах, позволяющих тренироваться в управлении протезом. Прыжки, уклонение от препятствий и атаки выполняются при помощи нескольких положений киберруки. Эти упражнения постепенно помогают адаптироваться к протезу, делая тренировочный процесс интересным и мотивирующим.
Этап 2: выбираем инструменты
Когда сформировали концепцию и определили особенности проекта, время выбирать инструменты для реализации. Главный из них — среда разработки игры.
Одна из наиболее популярных опций для начинающих разработчиков — Unity. Это удобный и мощный движок, подходящий для создания как 2D-, так и 3D-игр. Он позволяет гибко настраивать графику, физику игры, создавать эффекты и разрабатывать уникальные механики.
Сравним ключевые характеристики популярных сред для игровой разработки Unreal Engine и Unity.
Кроме Unreal Engine и Unity, есть и другие, более простые платформы, например Construct. Это визуальный движок, который не требует навыков программирования и подходит для новичков. Construct позволяет создать прототипы платформеров всего за несколько часов, но обладает меньшей гибкостью по сравнению с другими средами.
Этап 3: создание базовой механики платформера
Выбрав среду разработки, можно приступать к разработке основного геймплея. Для создания образов персонажей понадобится загрузить на платформу их спрайты. Найти бесплатные можно на специальных сервисах.
При разработке на Unity разработчику достаточно добавить картинку с жесткого диска во вкладку Assets, а затем «на сцену». Тогда у спрайта появятся два компонента:
- Transform — отвечает за позицию объекта на сцене, его размер и угол поворота относительно осей.
- Sprite Renderer — отвечает за отображение изображения спрайта на экране, так что герой корректно виден как в процессе редактирования, так и во время игры.
Дальше платформа позволит настроить физику игрового пространства, например гравитацию, и движения героя.
Основные действия персонажа в платформере обычно включают:
- Прыжок. Ключевая способность персонажей платформеров, позволяющая им преодолевать препятствия.
- Подкат. Используется для уклонения от врагов и перемещения под низкими препятствиями.
- Атаки и парирование. Элементы атаки для сражений с врагами. В зависимости от жанра и специфики игры у персонажа могут быть разнообразные атаки и арсенал.
Этап 4: дизайн уровней и система прогресса
Дизайн уровней зависит от выбранного поджанра и целей игры. Например, в пазл-платформерах внешний вид системы уровней и их содержание будут иметь гораздо более весомое значение для восприятия продукта, чем в roguelike-играх. Тем не менее уровни должны быть спроектированы так, чтобы поддерживать интерес пользователя к игровому процессу, учитывать сложность, разнообразие препятствий и создавать динамику.
Основные принципы построения уровней:
- Сначала создайте простой уровень, который обучит игрока основным механикам.
- Постепенно увеличивайте сложность: добавляйте новые препятствия, врагов, создавайте более сложные маршруты.
- Добавляйте мотивирующие элементы, которые стимулируют игрока двигаться дальше. Например, награды за выполнение заданий, скрытые объекты или бонусы, которые игрок может собрать.
Этап 5: детали
Для успеха игры, особенно если это инди-проект, ключевое значение имеют детали. Визуальный стиль, сюжет и музыка создают атмосферу, которая выделяет игру на рынке, привлекает и удерживает игроков. Уникальный визуал, стильные эффекты и запоминающиеся мелодии помогают игре стать приятным приключением для пользователей и почувствовать связь с игровым миром.
Алексей Карпов, геймдизайнер команды CHRONOCRASH, лично написал основную музыкальную тему к игре, что помогло усилить уникальный стиль и восприятие. Музыка в игре не только дополняет стимпанковский сеттинг, но и поддерживает нужное настроение, делая погружение в мир еще более захватывающим.
Геймификация и социальная значимость
Геймификация стала важной частью не только развлекательных игр, но и образовательных и реабилитационных проектов. CHRONOCRASH, разработанная специально для компании Motorica, делает реабилитацию увлекательной и доступной, помогая пользователям почувствовать контроль над движениями через интересные игровые задачи.
О том, как и какие особенности важно учитывать при создании игры для пользователей с протезами, рассказал Роман Сергеев, Android & iOS разработчик компании Motorica.