Алексей Власов, технический арт-директор 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.


Есть новость? Поделитесь с нами, напишите на press@app2top.ru

Тэги:

Комментарии

Оставлять комментарии могут только зарегистрированные пользователи.