Делимся опытом, даём советы о том, как разрабатывать VR-проект
Игра Astro Collapse — наш первый опыт в разработке VR-игр. В прошлой статье мы рассказали об основной идее, тестировании игры и результатах. Начните с неё, чтобы узнать о том, как правильно подходить к созданию виртуальной игры. В этот раз мы расскажем, как найти идеи для дизайна и нарисовать компьютерный мир, который увлечёт игроков.
Кратко о сюжете нашей игры
На Землю надвигается волна астероидов. Человечество находится под угрозой. Главный герой — пилот боевого корабля. Его миссия — расчистить путь для шаттлов, которые эвакуируются с планеты.
Трейлер Astro Collapse
Движок и платформа
Для разработки игры мы использовали популярный движок Unity 5. С ним легко работать: есть много ресурсов с готовыми решениями и инструментами, которые можно применять в проектировании игрового мира. Мы использовали утилиты Oculus и ассеты Unity.
За основу виртуальной реальности мы взяли платформу Gear VR. Игру тестировали на смартфоне Samsung Galaxy S7. Если в своём проекте вы используете такие же технологии, то вам пригодится инструкции разработки несложных VR-приложений на официальном сайте Oculus. Здесь вы найдете мануал для начинающих разработчиков VR-приложений и подробный туториал с понятным разбором работы виртуального мира.
Как мы создали игровой мир: графика и проектирование объектов
На этапе дизайна у нас не было детального сценария игры, только общее представление виртуального мира. Так мы сделали сырой прототип всей игры: графика не впечатляла, а геймплей был скучным. Но он выполнил свои функции: мы протестировали стрельбу, интерфейс и управление.
Фрагмент пользовательского сценария
Затем на доработку игры ушло полгода, потому что у нас не было чёткого планирования и сроков по этапам разработки. Мы делали много лишнего: несколько раз переделывали интерфейс игры, перерисовывали взрывы и спасательные шаттлы. Менеджер проекта в нашей команде появился слишком поздно.
Казалось, что это никогда не кончится и проект утонет на этапе разработки. В следующий раз мы будем лучше планировать и потратим месяц на подробный сценарий, чтобы сделать дизайн игры за два.
Напишите подробный сценарий, распределите роли в команде и чётко планируйте этапы разработки, чтобы не переделывать дизайн игры несколько раз.
Кабина пилота боевого корабля
Мы начали с кабины пилота. Для этого собрали референсы из популярных игр и фильмов. Искали модели боевых кораблей, вооружений и шаттлов. Так мы разработали кабину корабля и игровой интерфейс, которые будут знакомы игрокам. Это поможет им быстро понять управление.
Собирайте референсы, чтобы у команды сформировался понятный визуальный образ игры.
После поиска референсов, мы перешли к отрисовке эскизов. Так выглядел первый набросок боевого корабля игрока и его трехмерная визуализация. Нам было важно не закрыть прицел, пушки и астероиды стойками кабины:
Эскиз кабины боевого корабля в игре Astro Collapse
Второй ключевой элемент — пушки, которые видны из кабины пилота. Эскизы мы отрисовали в фотошопе. Получилось так:
Эскизы вооружения корабля
Затем мы смоделировали объекты в Blender и перенесли их в Unity:
Трёхмерная модель пушки в игре Astro Collapse
Следующий этап — детальная разработка интерфейса корабля. Нам нужно было разместить на экране прицел, перегрев пушек, здоровье, индикатор Земли и союзных кораблей:
Набросок игрового интерфейса в игре Astro Collapse
Делайте понятные интерфейсы и игровую навигацию, чтобы геймеры быстро поняли геймплей и не выключили игру.
После тестирования игры внутри команды мы поняли, как удобно для игроков разместить элементы интерфейса на экране. Мы убрали индикатор здоровья Земли и добавили информацию об эвакуационных кораблях:
Последняя версия игрового интерфейса
Мы хотели сделать больше двигающихся объектов, чтобы игра была динамичной и зрелищной.
Для этого анимировали смену прицелов, состояние здоровья и сделали тряску от ударов.
Игровой процесс стал выглядеть интереснее:
Анимация игрового интерфейса
Чтобы игрок почувствовал себя настоящим пилотом боевого корабля, мы добавили панель управления. В бою её почти не видно, но можно хорошо разглядеть, наклонив голову вниз:
Панель управления боевым кораблём
Создание галактики, астероидов и шаттлов
Мы отрисовали противника — астероид. Модель делали с нуля:
Сетка модели шаттла (mesh), диффузная текстура (diffuse map), карта нормали (normal map)
Затем мы смоделировали спасательный шаттл:
Готовая модель шаттла
Заключительный этап — создание поля боя. Мы добавили Землю, взлетающие шаттлы, звёздную галактику, Млечный путь и яркое солнце, чтобы создать естественную сцену для игрового мира.
Поле боя в игре Astro Collapse
Чтобы её оживить, нужно было придумать увлекательную атмосферу игры.
Как мы разработали геймплей
Одновременно с разработкой дизайна мы продумывали игровой процесс. Первоначальная задумка была банальной и скучной: игрок просто уничтожает астероиды. Поэтому перед нами встала задача — как погрузить игрока в атмосферу космического апокалипсиса? Мы начали работать над сценарием.
Наша команда провела анализ похожих игр и собрала данные по отличительным чертам. Так поняли, как геймдизайнеры увлекают игроков и какие создают крючки, чтобы игра была интереснее.
Ищите похожие игры и отмечайте то, что вас зацепило: сюжет, игровой мир, характер героя, интерфейсы. Используйте это в своём проекте.
Ещё мы собрали ребят из нашего офиса и провели штурм. Начали думать, что добавить в игру, чтобы она стала интереснее. Так мы написали целый лист идей, а потом выбрали самые увлекательные, которые успели бы реализовать.
Сначала мы придумали цель для игрока: спасти как можно больше людей. Для этого добавили шаттлы, которые эвакуируются с Земли. Чтобы они спаслись, игроку необходимо прочищать для них путь.
Если игрок не успевает сбивать астероиды, погибают шаттлы
С каждой минутой астероидов становится больше. Так мы усложнили игру:
Чем дольше идёт игра, тем больше астероидов летят на Землю
Игрок может получить другое оружие. Для этого нужно подбить бонус-куб:
Игрок может получить плазменную турель или лазерную пушку
Тестирование игры на детях показало, что им не хватает динамики. Они хотели больше кораблей в космосе. Поэтому мы добавили союзные станции, которые вместе с игроком расчищают дорогу спасательным шаттлам:
Союзные корабли помогают игроку. Астероиды могут взорвать союзников
Во время сражения с игроком разговаривают люди из других боевых станций по рации. Для этого мы сделали радиовещание и создали атмосферу боя с криками и паникой, которая держит игрока в напряжении. Мы прослушали несколько записей с реальных боевых действий пилотов вертолёта Ми-8. Это помогло нам прочувствовать атмосферу боя и переживания участников.
Ищите референсы звуков для игры и погружайтесь в похожие ситуации. Затем сделайте хорошую озвучку: профессиональные актёры создадут нужную атмосферу в игре.
Начало игры сопровождается серьёзным голосом капитана. Речь становится взволнованной, когда астероиды подбивают первые шаттлы. Женский голос с Земли сообщает о взлетевших кораблях и погибших городах.
Чтобы создать атмосферу апокалипсиса в игре с помощью радиовещания, мы обратились к профессиональным актёрам
Для победы игроку нужно спасти 30 шаттлов. После этого появляется босс — огромный астероид:
Игрок уничтожает босса в игре Astro Collapse
Любая захватывающая игра — это интересный сюжет и понятный игровой мир. Мы вовлекли игрока в атмосферу апокалипсиса и поставили ясную цель — спасти человечество от гибели. Чтобы сделать игру динамичнее, мы сделали нарастающую волну астероидов, бонусное оружие и придумали босса. Игровой мир мы наполнили яркими визуальными элементами: интерфейс, взрывы, осколки, пушки и кабина боевой станции.
Советы геймдизайнерам
Чтобы сделать хороший геймдизайн с первого раза, соблюдайте несколько правил:
- Напишите подробный сценарий перед началом разработки игры. Опишите персонажа, уровни, локации и механику игры. Вносите как можно больше деталей, оживляйте картинку. Так будет легче поставить правильные задачи для разработки и сократить время работы над проектом.
- Создайте черновой прототип всей игры. Это поможет протестировать игру в самом начале и понять, куда двигаться дальше.
- Разбейте работу на этапы, задайте четкие сроки и определите роли. Собирайтесь каждое утро и обсуждайте проект.
- Если у вас нет менеджера, выберите главного на проекте, который будет контролировать работу.
- Найдите похожие игры и проведите аналитику. Отмечайте особенности, которые можно использовать в вашем проекте. Так вы изучите опыт других геймдизайнеров, что поможет сделать игру увлекательнее.
- Ищите референсы будущего дизайна. Вспомните фильмы или игры, в которых вы видели подходящую картинку. Это поможет команде понять, как лучше визуализировать игровой процесс, персонажа и локации.
- При разработке интерфейсов, опирайтесь на знакомые игрокам решения. Не усложняйте игру, чтобы игроки не запутались в управлении и геймплее.
- Сделайте хорошую озвучку персонажей. Рассерженный или испуганный голос профессиональных актеров в наушниках игроков передаст атмосферу лучше титров.
- Играйте и любите игры, чтобы быть в тренде геймдизайна.
Наши советы помогут сделать игру быстрее, а сюжет интереснее. В следующей статье расскажем о том, как опубликовать виртуальную игру в магазине Oculus с первого раза.
А пока сыграйте в игру Astro Collapse и почувствуйте атмосферу космического апокалипсиса! Для этого вам понадобятся очки Samsung Gear VR. Они работают со смартфонами: Samsung Galaxy Note 4, 5, 7, S6/S6 Edge/S6 Edge+, S7/S7 Edge, S8/S8+.
До скорого!