11 августа 2019 11.08.19 13 15K

Дьявол в деталях — как мелочи превращают разработку видеоигр в ад

В начале сверхъестественного подросткового триллера Oxenfree от Night School Studio есть сцена, где главные герои перемахивают через забор. Прохождение игры занимает около четырёх с половиной часов, а сцена с забором — каких-то 30 секунд. Однако этот крошечный эпизод доделывали и переделывали в течение 18 месяцев — всего срока разработки Oxenfree.

Так говорит один из основателей Night School Шон Кранкел (Sean Krankel). Полтора года авторы бились над крошечным отрывком и пытались сделать так, чтобы он работал правильно. По словам Кранкела, со злосчастным забором был связан самый раздражающий баг Oxenfree.

Сейчас Night School столкнулась с другой проблемой. Новая игра студии — Afterparty, история о двух друзьях, которые попадают в Ад. Чтобы выбраться оттуда, герои должны бухать на спор с Сатаной. Как выяснилось, когда в игре есть люди и черти, которые различаются размерами тела, очень сложно сделать так, чтобы задницы сидящих правильно выравнивались по линии стула, отмечает Кранкел.

Портал Polygon взял интервью у нескольких девелоперов и разузнал, как внимание к мимолётным мелочам, которые многие игроки даже не замечают, превращает разработку видеоигр в тяжёлый труд, как компании пытаются облегчить процесс, не потеряв в качестве, и какие инструменты собираются применять в будущем.

30 секунд с забором, которые Night School мучила 18 месяцев.

Есть два стула…

В 2001 году команда Remedy Entertainment, состоявшая из 24 человек, выпустила свою первую прорывную игру — Max Payne. В 2019-м, рассказывает исполнительный продюсер компании Туукка Тайпалвеси (Tuukka Taipalvesi), один лишь отдел аниматоров у Remedy больше всего коллектива первой Max Payne.

С каждым консольным поколением, говорит Тайпалвеси, у игроков повышаются ожидания от целостности игр и их внешнего вида. Из-за этого компании должны всё тщательнее трудиться практически над каждым элементом, который появляется в игре. Разработка «всего, буквально всего» занимает больше времени, чем кажется людям со стороны, утверждает Тайпалвеси.

Во времена первой Max Payne разработчик мог сделать и вставить в игру простое кресло за пару часов, продолжает свою мысль продюсер. Сейчас в Control на аналогичную задачу приходится выделять намного больше времени и сотрудников.

«Раньше была всего лишь полигональная модель кресла и размеченная карта текстур — вот тебе и кресло готово, — вспоминает Тайпалвеси. — Сегодня всё зависит от того, где используется кресло. Если это геймплейный объект, у него есть границы столкновений, физика разрушения, коллизии, от трёх до четырёх карт текстурных материалов, детали и полигональные модели».

Простым временам — простые скамейки.
Простым временам — простые скамейки.

«Время, необходимое на разработку, зависит от типа кресла — мягкое ли оно, покрыто ли кожей, должно ли деформироваться. На это вполне возможно потратить от четырёх до шести дней. Если это металлический стул для кат-сцены, и игрок с ним никогда не взаимодействует, и ему не нужна физика, коллизии или что-то ещё, тогда его можно сделать за день или меньше. То есть всё довольно сильно зависит от того, как применяется объект».

Когда разработка многих мелких деталей отнимает целые дни, очень важно правильно составить расписание. Однако точный календарь сформировать никогда не получится: сроки в большинстве случаев выходят примерными, они постоянно меняются в течение производства игры.

Слово Тайпалвеси: «Я бы с удовольствием встретился с продюсером, который действительно может всё распланировать во время предварительного производства и выдать километровую таблицу с точностью в духе „Вот ассет, который мы сделаем, а вот все детали, которые мы будем использовать“».

Но не все ассеты строятся с одинаковой тщательностью. Даже в самых красивых играх встречаются вещи, которые для игрока выглядят лучше, чем они есть на самом деле.

Вполне возможно, что на один лишь стул в этом кадре кто-то потратил несколько дней.
Вполне возможно, что на один лишь стул в этом кадре кто-то потратил несколько дней.

Иллюзия глубины

В комнате с креслом у каждой детали будет разная глубина проработки. Главный герой, который зашёл в комнату, отличается очень большим количеством полигонов, ведь он постоянно находится в центре внимания игрока. А вот пишущая ручка на столе уже далеко не такая детальная — пользователь вряд ли когда-нибудь увидит её вблизи. Жонглирование детализацией — один из способов стабилизировать производительность игры и правильно распределить место в памяти.

«Если сделать ручку с точностью до микроскопического уровня, а в игре не настолько продвинутые технологии, чтобы поддерживать потоковую подгрузку таких деталей, то эти детали будут синхронизироваться с памятью. Они будут отнимать память у чего-то, что может быть более важным, — поясняет Тайпалвеси. — Поэтому разрешение наших исходных ассетов в несколько раз превышает то, что в итоге попадает в игру. У нас есть автоматизированный экспортный конвейер, который автоматически снижает детализацию объекта, если тот считается неважным. Ну и, конечно, у нас также есть подгрузка на ходу и уровни детализации каждого предмета, которые меняются в зависимости от того, насколько далеко от этого объекта находится игрок или камера».

Night School как раз обломала зубы о слишком высокую детализацию в Afterparty. Сначала студия хотела сделать полностью трёхмерное приключение, но в первых прогонах выяснилось, что с таким подходом Afterparty выглядит «как плохой мод для World of Warcraft», проводит полушутливое сравнение Кранкел.

Разработчики поняли, что полное 3D лишает их творение стиля и харизмы. «А ещё игра потребовала бы команду из 100 человек на производство», — добавляет Кранкел. В итоге Afterparty перешла на так называемое 2.5D и сосредоточилась на иллюзии глубины. Объекты на переднем плане (например, столы, за которыми дрыхнут опьяневшие демоны) выполнены в 3D с достаточно высоким уровнем детализации, а фоны, которые игроки вблизи не увидят, нарисованы в 2D с картами нормалей — методом имитации объёма без дополнительных полигонов.

Afterparty.

В Afterparty применяют и другие фокусы. Например, есть бар с 20 персонажами. Поначалу Night School наделяла NPC сложным поведением и считала у каждого существа степень опьянения. А затем студия попробовала другой подход: непомерно серьёзный искусственный интеллект убрали и вместо этого начали задавать поведение персонажей вручную. Выяснилось, что с точки зрения игрока разница совершенно незаметна, однако версия со сложным ИИ сильно бьёт по производительности.

Ещё один пример — стеклянная посуда для напитков. Так как Afterparty — игра про выпивку, всякие кружки и стаканы для неё очень важны. Ранняя версия посуды оказалась неудачной: разработчики не могли нормально разглядеть её в игре, потому что она была прозрачной. Чтобы видеть тип материалов, рендеринга и затенений, у стеклянных изделий пришлось увеличить количество полигонов.

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

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

Но даже фокусов с иллюзией глубины не хватает, чтобы разработчики могли сделать весь игровой контент исключительно своими силами. Тогда на помощь приходят аутсорс и похожие услуги.

Стаканы с выпивкой в Afterparty вы будете видеть примерно на таком расстоянии.
Стаканы с выпивкой в Afterparty вы будете видеть примерно на таком расстоянии.

Помощь извне

Remedy не сделала ни одного автомобиля в Alan Wake — их все создали аутсорсеры.

По словам Тайпалвеси, многие ассеты заказываются у сторонних компаний: если игра выполнена в реалистичном стиле, проще взять фотографию кресла, составить список технических требований и передать задание внешнему партнёру. Благодаря этому эксперты самой студии могут сосредоточиться на более важных и интересных внутренних проблемах. Иными словами, ценность аутсорса в том, что он освобождает основную команду разработчиков от рутинных задач.

Тайпалвеси говорит, что Remedy самостоятельно сооружает модели основных персонажей и тех вещей, которые будут использоваться много раз. А одноразовые ассеты, элементы для кат-сцен или предметы без особых требований заказывают у аутсорсеров. «Грубо говоря, художники [Remedy] могут выбирать, над чем они хотят работать, выбирать ассеты, которые хотят сделать. Большинство людей, которые сидят у нас, скорее архитекторы широкого размаха. Они строят уровни, здания, обозначают основные линии, само окружение. А потом обширная часть дополнительной работы, которая нужна для оживления сцены, приходит от аутсорса», — уточняет Тайпалвеси.

Night School тоже пользуется поддержкой внешних партнёров, но совсем для других целей: студия наняла рабочих по контракту, чтобы они помогли с дизайном сценария Afterparty — он, как утверждает Кранкел, получился «здоровенным». А вот всей художественной частью Night School занимается самостоятельно — отчасти благодаря вышеупомянутому переходу от 3D к 2.5D.

Скорее всего, далеко не все ассеты в этом кадре нарисовала сама Remedy.
Скорее всего, далеко не все ассеты в этом кадре нарисовала сама Remedy.

Подвиды аутсорса облегчают жизнь даже самым маленьким разработчикам. Polygon поговорил с Дэвидом Велем (David Wehle), единственным автором The First Tree — игры о лисе, которая ищет своего детёныша. Вель занимался The First Tree в свободное время от основной деятельности — производства «экспириенса» для виртуальной реальности The Void. Ко всему прочему, тогда у него только-только родился ребёнок. На The First Tree Вель тратил примерно пару часов по будничным вечерам, когда младенец засыпал, и ещё по два-три часа в выходные.

Вель признаётся, что смог завершить The First Tree только благодаря магазинам ассетов вроде Unity Store, где продают заранее созданные анимации, модели, текстуры и так далее. Он сэкономил сотни часов, хотя потрудиться всё равно пришлось: чтобы игра не казалась сборником чужих ассетов, Вель старался модифицировать купленные работы и применять к ним своё творческое видение.

Отчасти такой подход даже повлёк за собой новую головную боль. Вель приобрёл для лисы в The First Tree анимацию прыжка, однако был недоволен результатом. Девелоперу пришлось изрядно повозиться с, казалось бы, элементарным действием: Вель работал над анимацией от совершенно постороннего человека, из-за чего рождались дополнительные сложности.

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

The First Tree.
The First Tree.

Проблемы будущего и их решения

Эндрю Прайс (Andrew Price) как-то решил подсчитать, сколько денег Ubisoft потратила на производство одного кадра The Division. Он взял среднюю зарплату соответствующих специалистов и прикинул количество времени, которое обычно уходит на создание ассета в AAA-игре.

Результат — примерно 200 000 долларов на кадр. Небольшая куча мусора на дороге обошлась Ubisoft в 3 438 долларов, большая куча у обочины — в 14 400 долларов, кусок текстуры дороги — в 11 400 долларов, модель главного героя — в 49 000 долларов и так далее.

Прайс — основатель и глава сервиса Poliigon, где продаются текстуры, модели и прочие вещи в таком духе. Он называет стоимость производства ассетов в The Division неразумно высокой.

Подсчёты Прайса в одном кадре The Division.
Подсчёты Прайса в одном кадре The Division.

По мнению Прайса, всё упирается во время. В беседе с Polygon он приводит пример с типичным зданием в AAA-игре. Сначала разработчик определяет основные параметры строения: ширину, количество этажей и так далее. Затем решаются вопросы помельче: какое расстояние между окнами, нарисованы ли граффити на стенах, где стоят предметы типа растений? Также есть фаза текстурирования, когда нужно обозначить особенности вроде ширины и вида кирпича, из которого построено здание. В итоге одна постройка в игре обходится компании примерно в 4 000 долларов, считает Прайс.

И это только одно здание, у которого и внутреннего убранства толком нет. Если девелопер хочет получить альтернативные версии этого же строения, работы может запросто прибавиться. «Скажем, вы хотите просто изменить высоту этажей. Ну, всё идёт коту под хвост, потому что окна больше не выровнены, лестницы не совпадают, — говорит Прайс. — Если нужно создать несколько дубликатов строения, много работы придётся делать заново, потому что, как только вы меняете структуру модели, нужно менять и текстурирование, так что текстуры приходится рисовать заново. Если делать всё по старинке, работа просто не масштабируется».

Прайс предлагает использовать для таких целей процедурные рабочие процессы: вместо того чтобы ковырять каждое здание вручную, можно настроить программу, которая генерирует бесконечное количество вариантов строений по заданным параметрам. То есть разработчики будут создавать не один ассет, а систему, которая выдаст тысячу вариантов этого ассета.

Игровая индустрия постепенно внедряет подобные решения: о чём-то похожем в своих докладах уже говорили авторы Far Cry 5 и Marvel’s Spider-Man, уверяет Прайс.

Играм с огромными городами качественная генерация множества зданий требуется особенно сильно.
Играм с огромными городами качественная генерация множества зданий требуется особенно сильно.

С приходом следующего поколения консолей игры станут ещё больше. Ожидания геймеров повысятся. Remedy отчасти готова к этому: свои исходные ассеты компания делает намного качественнее, чем те версии, которые мы видим в играх текущего поколения. «Снижать качество намного проще, чем повышать его. Снижение происходит автоматически, повышение требует ручной работы», — говорит Тайпалвеси.

Как полагает Кранкел, когда ожидания снова вырастут, Night School продолжит искать помощи у аутсорсеров. Студия не хочет раздувать свой штат, потому что это приводит к дополнительным рискам.

По мнению Polygon, скорее всего, проблемы, описанные в тексте, на новом поколении консолей станут ещё острее. С одной стороны, это необходимое зло, а с другой — разработчики будут искать и находить умные решения. «Мы пытаемся быть слегка впереди веяний индустрии всегда, когда можем, — высказывается Тайпалвеси. — Но да, это гонка. Это технологическое и художественное соревнование для разработчиков — остаться актуальными на платформе, где они выпускают игры».


Поддержи Стопгейм!

Лучшие комментарии

Отличная статья, я аж зарегистрировался, чтобы комментарий оставить. Всегда интересно узнать, чем живут разработчики.
Однако, есть вопрос. Вот ситуация с жидкостями в Afterparty — не слишком широки ли были амбиции девелоперов? Проще ведь сделать жидкость статичной. Нужна ли была фича, от которой потом отказали, изначально, или же разработчики пали жертвой feature creep?
Я, почему то, подумал что это рубрика Яна, которая про видеооформление статей из блогов. Надо бы, наверное, как-то поменять оформления, чтобы не путать статьи.
Здесь речь об ассетах. В той, как я понимаю, речь о игровой физике, ИИ, спецэффектах и подобном. Такие штуки гораздо сложнее оптимизировать под две разные системы и никаким автоматическим переписыванием кода там и не пахнет.
Спасибо за интересный материал. Хотелось бы видеть на сайте больше статей, освещающих различные аспекты разработки видеоигр.
Когда в голове видишь картинку и хочешь ее создать на деле бывают такие ситуации когда амбиции берутся из головы, когда представляешь это себе и хочется чтобы оно соответствовало
Глава сервиса Poliigon… в беседе с Polygon

:)

Спасибо, очень интересно было прочесть.
«Снижать качество намного проще, чем повышать его. Снижение происходит автоматически, повышение требует ручной работы», — говорит Тайпалвеси.

Я не совсем понимаю. Это утверждение несколько конфликтует с этой новостью, которую я запомнил, потому что она показалась мне несколько странной. Тут речь о разных вещах?
stopgame.ru/newsdata/38812
Тут игра про бар и выпивку. Нормально что разработчики решили уделить внимание физике напитков. Вообще есть уже много наработок связанных с физикой напитков и жидкостей, даже в инди, например, Red Strings Club. Скорее всего просто набрели на подводные камни и внутренний движок не оказался готов к такому.
Многие открытые пространства так сейчас и делаются. Многие леса вполне себе согданы алгоритмами, после чего доведены до ума людьми.

Вот с интерьерами всё ещё очень плохо.
Хотя первый выпуск он выпустил совсем не так давно.
Игр на самом деле вышло немало прикольных — теперь еще и нужно выбор сделать
Насколько же все таки сложна разработка видеоигр, надеюсь что в будущем алгоритмы будут в состоянии сами прорабатывать большинство объектов окружения, зданий, внутреннего убранства квартир на таком же уровне что и сами люди.
Читай также