Как мы упростили пайплайн оформления уровней для DLC к ION Shift

Добрый день!
Речь пойдет о том, как решили сократить производственные расходы при работе над дополнением для ION Shift.
Сам ION Shift это 2.5D платформер, в котором сами персонажи 2-х мерные, тогда как уровни выполнены в полноценном 3д.

ION Shift
ION Shift

Для упрощения задания геометрии уровня мы написали инструмент который позволял генерировать быстро стены\пол, но все равно задание всей геометрии, расстановка освещения, расстановка пропсов, все это занимало довольно прилично времени и на оформление одного уровня уходило в среднем от 8 до 12 часов.
Мы решили делать дополнение, состоящие из 8 уровней к слову в оригинале было 16 уровней, т.е. по сути дополнение по размеру как пол игры. Но тратить на оформление каждого уровня столько же времени вовсе не хотелось, ибо цель была произвести новый контент, не тратить на него столько же времени, при этом так сказать, он должен быть good enough, чтобы продавать это за деньги.
Тут на ум пришел старый добрый Metal Gear 2, а точнее набор VR миссий, в которых Snake тренировался. Выглядело оно вот так.

Metal Gear 2: VR Missions
Metal Gear 2: VR Missions

Тут видно, что Хидео, мать его гений, применил элегантный трюк, а именно обозвав миссии VR и использовав стилизацию под виртуальный мир, по сути выдал уровни сделанные в gray box как завершенные.
И тут мы подумали, а чем мы хуже Кодзимы, тоже так хотим. Подобное оформление не требует сложной топологии задников, как это было в основной игре, плюс не надо парится с настройкой освещения.
Ок, но что можно сделать еще. Все наши уровни, изначально делаются как 2Д уровни с использованием TileMap, и именно это является gray-box версиями уровней

Gray box уровень из ION Shift
Gray box уровень из ION Shift

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

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

Внешний вид уровня до автоматической подстановки моделей
Внешний вид уровня до автоматической подстановки моделей

по сути полностью автоматически получался полноценный 3д уровень

Внешний вид уровня после автоматической подстановки моделей
Внешний вид уровня после автоматической подстановки моделей

Для такого уровня не надо отдельно настраивать освещение, как это было в основной игре, достаточно поставить один напраленный источник и настроить цвет амбиента и все. Ну и чтобы повеселее было, пропсы были расставлены, а то как то пустовато было.
А вот так оно выглядит в динамике.

Запись геймплея из первого уровня дополнения к ION Shift

Итого, использую довольно простой трюк, удалось сократить время на оформление уровня с 8-12 часов до 30-40 минут. И что немаловажно - выглядят такие уровни вполне стильно, плюс при желании, можно будет подкрасить все уровни цветом и тем самым добиться визуального разнообразия самих уровней между собой.

Возможно наш опыт вам будет полезен, а возможно вам интересно будет услышать о каких то конкретных аспектов разработки игры. Не стесняемся, пишем об этом в комментариях, с радостью расскажу о разработке проекта еще.
Так же, возможно вас заинтересует и сам ION Shift, как минимум настолько, чтобы добавить его в список желаемого. Не стесняемся, вишлистим, а еще лучше поддерживаем проект покупкой;)

7
2
6 комментариев