Алексей Власов, технический арт-директор 1C Entertainment, поделился подробностями разработки King’s Bounty II. В довольно сжатые сроки команде пришлось создать ряд инструментов для ускорения разработки и оптимизации — включая процедурно-генерируемую растительность и особый подход к созданию сотен персонажей.
King’s Bounty II
Материал Власова был опубликован на портале 80 Level.
Ключевые детали
- В отличие от первой части, 1C Entertainment пришлось разрабатывать и консольные версии (а также заниматься оптимизацией для них). При этом изначально у команды был только PC-прототип, что значительно усложнило процесс.
- Все текстуры и геометрия растительности в King’s Bounty II генерируется процедурно. Это составляет 95-98% всего игрового окружения. Например, для создания елки разработчикам необходимо было смоделировать несколько разных иголок. Потом это позволило менять их размеры и «запекать» в готовые текстуры. Похожий подход применялся в No Man’s Sky.
- Для работы с окружением 1C Entertainment использовала три основных инструмента: SpeedTree, Substance Painter и Substance Designer. Это значительно упростило работу и оптимизацию для разных платформ. По словам Власова, лишь в 2-3% случаев команде приходилось вручную адаптировать модели для Nintendo Switch.
- Вся трава в King’s Bounty II, включая цветы и некоторые лепестки, анимирована и реагирует на ветер. Для этого студия модифицировала Pivot Painter 2, инструмент для Unreal Engine 4, чтобы его можно было эффективно использовать с помощью доступных на Xbox One и PS4 ресурсов.
- Для анимации отдельных листьев на деревьях команда разработала инструмент UVW Pivot Animation. По словам Власова, похожая техника впервые была использована в Ultimate Spider-Man. По сути, это попиксельное преобразование координат UVW. Текстура определяет координаты основания листьев, которые можно повернуть относительно этих координат. С помощью еще нескольких масок устанавливается степень вращения, разница смещения во времени и смещение глубины. Это делает анимацию более реалистичной..
- Из-за сжатых сроков студии не удалось анимировать так все листья в игре, но команда проекта обещает исправить это в последующих аддонах для King’s Bounty II.
- Для оптимизации студии пришлось усовершенствовать шейдеры волос и кожи, поскольку стоковые шейдеры хорошо работают только на высоких настройках для PC. На консолях же возникают проблемы с тенями, бликами, прозрачностью и другими мелкими деталями. Власов отмечает, что оптимизация отняла у команды много времени и нервов.
- В игре свыше 1300 персонажей, включая основных героев и обычных горожан. Всех их необходимо было создать всего за полтора года. Поэтому студии пришлось идти на различные компромиссы и ухищрения, чтобы уложиться в сроки и выпустить King’s Bounty II на всех целевых платформах.
- Например, для всех персонажей использовался один скелет. С помощью размера костей команда меняла пропорции, что значительно ускоряло процесс моделирования. Также разработчикам не приходилось адаптировать одежду для героев с разной комплекцией — она автоматически подгонялась под уже готовый скелет.
- У студии также не было ресурсов и времени для создания разных причесок. Для работы с волосами команда использовала инструменты Houdini. Таким образом вместо моделирования индивидуальных причесок разработчики использовали систему генерации, меняя количество треугольников при создании волос на головах персонажей.
- Во время разработки проекта 1C Entertainment придерживалась следующего правила: «Один контент для всех платформ». Это позволило сэкономить множество ресурсов и упростило работу программистов и художников.
King’s Bounty II вышла 24 августа. Средний балл PC-версии на Metacritic составил 65/100. Также проект изначально негативно восприняли поклонники проекта Katauri Interactive, раскритиковав игру в Steam. Однако с тех пор рейтинг King’s Bounty II немного выправился — сейчас у нее 60% положительных отзывов в магазине Valve.
Комментарии
Ответить