Почему видеоигры так трудно делать?
18 месяцев на забор и 6 дней на стул
В начале сверхъестественной драматической игры про подростков Oxenfree была сцена, в которой главные герои прыгали через забор. На фоне примерно четырех с половиной часов, которые вы потратите на прохождение игры, эта сцена длится всего лишь 40 секунд. Но, по словам Шона Кранкеля (Sean Krankel), соучредителя Night School Studios, команде потребовалась провести настоящую глубокую работу - в течение восемнадцати месяцев - чтобы избавиться от всех ошибок. По его словам, это был самый заполняющий внимание и раздражающий баг в Oxenfree.
С чем из последнего столкнулась студия? Как заставить персонажей сесть ровно в кресла в предстоящей игре Afterparty - игре о двух друзьях, которые умирают, попадают в ад и теперь должны обогнать обитателей подземного мира в попытке спасти свои души.
«Это безумный кошмар, когда вы пытаетесь думать о разнице в размерах между людьми и демонами», - говорит Кранкель. «Что-то столь же простое, как... да... буквально, получить задницу такого размера, чтобы она соответствовала стулу, невероятно трудно», - добавляет он, смеясь.
Видеоигры, как известно, очень сложно делать. Крупнейшие ААА-проекты 2019 года требуют сотен, если не тысяч, людей в разных студиях по всему миру, чтобы просто состояться. Время разработки составляет годы. Помимо выдумывания историй, разработки игрового процесса и очевидных функций, которые попадают в превью и в описания товаров в магазинах, существуют мелкие детали, которые зачастую необходимо выполнить вручную и разместить в проекте, иногда скрывая от игрока, чтобы игра выглядела более правдоподобной и захватывающей - как, например, короткая анимация персонажей, прыгающих через забор.
Независимо от того, замечает ли это игрок, оценивает ли он, видит ли он вообще эти детали, всё, от ручки на столе до стула в комнате, должно быть тщательно сделано, тщательно исследовано и сто раз перепроверено. Но какой ценой этого можно добиться? Как разработчик решает, сколько времени нужно выделить на декорирование маленькой комнаты, а сколько на главного героя игры? Сколько полигонов должен получить ассет на краю поля зрения игрока, а сколько то, что будет висеть у него прямо перед носом?
Недавно мы поговорили с несколькими разработчиками, создающими игры разных размеров и масштабов, о решениях, лежащих в основе некоторых мелких деталей в их играх.
Разработка игр не так проста, как кажется.
ПРОБЛЕМА С МЕБЕЛЬЮ
В 2001 году команда из 24 человек из Remedy Entertainment выпустила свой первый заглавный IP студии, Max Payne. В 2019 году исполнительный продюсер Remedy Туукка Тайпалвеси (Tuukka Taipalvesi) отмечает, что то была команда размером меньше, чем один нынешний отдел анимации. Каждое последующее поколение консолей, по его словам, рождает у игроков все более высокие ожидания в отношении точности и визуального стиля, что увеличивает объем работы, который необходимо приложить разработчику «в отношении практически любой вещи, которой касается игра».
«Всё, буквально всё» по словам Тайпалвеси требует гораздо большего времени, чем представляют себе люди.
Работая над Max Payne и собираясь сделать что-то новое и такое простое, как кресло, разработчику требовалось всего пару часов работы, и это появлялось в игре. Сегодня же, в грядущей повествовательной экшен-игре Control от Remedy Entertainment, даже то, что люди могут просто не заметить, требует больше времени - и людей - чтобы быть созданным.
«Раньше у вас была простая полигональная модель стула и карта текстуры, наложенная на него, и на этом всё, вот ваш стул, он готов», - говорит Тайпалвеси. «В наши дни всё зависит от того, где будет использоваться кресло. Если это игровой объект, у него должны быть границы столкновения; в нем есть физика разрушения; он должен реагировать на соприкосновения; у него есть три-четыре карты текстур, плюс более подробные детали, а также разные полигональные модели».
«[Время, необходимое для разработки] зависит от самого стула: если это мягкий стул, если он сделан из кожи, если он нуждается в деформации, то четыре-шесть дней, безусловно, решат вопрос», - говорит он. «Если же это металлический стул в кинематографическом ролике, с которым игрок никогда не взаимодействует, и ему не нужны физика, столкновения или что-то еще, вы можете справиться за день или даже меньше. Так что это в значительной степени зависит от варианта использования реквизита».
Когда для разработки многих мелких деталей в игре требуются целые дни, планирование получает первостепенное значение. Но планирование - это не точная наука, говорят разработчики, опрошенные для написания этой статьи. Это, в основном, приблизительные цифры, которые корректируются на протяжении всего производства игры. «Я хотел бы встретиться с продюсером, который на самом деле может спланировать всё это во время предварительной подготовки и дать вам распашонку длиной в милю, которая выглядит как: «Это ассет, который мы собираемся создать, а это все те детали, которые мы собираемся использовать», - говорит Тайпалвеси.
«Это ситуация сродни «тяни-толкаю», - рассказывает Тайпалвеси. «У нас есть полностью готовое к тестированию окружение, и мы начинаем рассуждать: «Окей, мы имеем такой большой уровень. У нас есть вот такой бюджет по ассетам. Таким образом, мы можем поставить три стула и четыре лампы в эту комнату. И теперь нам нужно знать, сколько времени потребуется каждому из них».
Но не каждый ассет построен одинаково. Иногда даже в самых приятных на вид играх разработчик может обмануть глаза игрока, заставляя его думать, что что-то выглядит намного лучше, чем есть на самом деле.
ИЛЛЮЗИЯ ГЛУБИНЫ
В комнате со стулом каждый ассет также имеет разный уровень точности. Например, главному герою, находящемуся в комнате, понадобится много полигонов, чтобы хорошо выглядеть в глазах игрока - особенно в такой повествовательной игре, такой как Control. Таким образом, разработчик может немного полениться, сделав ручку на столе с гораздо более низким уровнем точности, потому что игрок редко когда увидит ее близко. Это помогает сбалансировать производительность игры, позволяя использовать память для более важных ресурсов.
«Если вы создаете ручку с детализацией вплоть до микроскопического уровня, и у вас в проекте недостаточно таких технологий, чтобы поддерживать потоковую передачу данных об этих деталях, то оно просто съест ресурсы из чего-то другого, что может быть гораздо более важным», - поясняет Тайпалвеси. «Таким образом, у нас есть исходные данные о материалах, которые имеют множество разрешений. Их путь фактически заканчивается в игре, ведь в нашем конвейере экспорта есть автоматизированные процессы, которые самостоятельно уменьшат точность отображения объекта, если они сочтут его неважным. Еще, конечно, у нас также есть потоковая передача и уровни детализации для каждого отдельно взятого объекта, которые меняются в зависимости от того, насколько далеко находится игрок или камера игрока от этого объекта».
Это урок, который студия Night School с трудом извлекла из разработки Afterparty. Изначально она планировалась как полностью трехмерное приключение - пока первый прототип игры, созданный в студии, не получился как «плохой мод для World of Warcraft», - смеется Шон Кранкель. Таким образом, игра стала 2.5D.
«Чем дальше мы продвигались, тем больше мы понимали, что попытка создания всего этого в 3D убила бы уникальность и персонажей. А еще для этого потребовалась бы команда из 100 человек», - говорит Кранкель.
Решением для студии стало создание иллюзии глубины. Объекты на переднем плане игры - такие как таблицы с демонами на них, приводит в пример Кранкель - получают довольно много трехмерных деталей. Напротив, фон игры, то, что игрок никогда не увидит близко, сопоставим с картиной - в основном это 2D-равнины с обычным изображением на них. Также используются техники для имитации освещения или текстур объекта без использования дополнительных полигонов. Вроде бы уже и не 2D, но еще и не 3D.
«Мы всегда стараемся определиться с типами полигональных моделей в соответствии с расстоянием от объекта до камеры», - говорит Руэль Паскуаль (Ruel Pascual), ведущий художник в Night School. - «Если вы увидите его только с этого ракурса, то нам не нужно тратить много времени на то количество полигонов, которое применено к объекту».
«Этот вопрос во многом зависит от потребностей геймдизайна. Это не просто количество полигонов, но это также может быть ситуация наподобие «Так, а что, если в этом баре будет 20 персонажей?» - а у нас у всех персонажей было разработано сложное поведение», - добавляет Кранкель. Первоначально Night School добавила неигровым персонажам в Afterparty такие возможности, как хождение по локациям.
«А потом мы подумали: «Теперь давайте попробуем другую версию, где большая часть этих элементов просто делается вручную, мы не будем заниматься сумасшедшим ИИ и всеми этими дополнительными анимациями», - говорит Кранкель. - «Когда вы смотрите на оба варианта, вы никогда не сможете заметить разницу, но первый был чреват снижением производительности, чтобы поддерживать более сложное поведение».
«Но на самом деле это похоже на приготовление блюда или чего-то в этом роде», - добавляет он. - «Вы в некотором смысле по ходу разработки пробуете игру на вкус. Вы не начинаете работу с мыслями наподобие «Да, вот это точное количество полигонов». Я имею в виду, Паскуаль и его команда установили бы некоторые такие параметры заранее, но это всегда предположение, не более, потому что мы на самом деле не можем знать, как оно будет выглядеть, пока не начнется работа.
Эта иллюзия, конечно, масштабируется вплоть до мельчайших ассетов и деталей игры. В игре про выпивку напитки и стеклянная посуда очень важны. Но в Afterparty, благодаря его художественному стилю, они выглядят маленькими на экране, игрок не увидит их близко.
«Раньше мы дизайнили стеклянную посуду, но потом возникали проблемы с тем, чтобы увидеть, как выглядит это стекло, потому что все вокруг такое прозрачное», - говорит Паскуаль. «Нам нужно было увеличить количество полигонов на нем, чтобы хотя бы разглядеть тип материала или тип рендеринга и затенения».
«Да», - говорит Кранкель, - «это одна из тех вещей, с которой мы начали. Вы все время работает со своего рода симуляцией жидкости в кубке, который летает вокруг, и вы говорите «Это выглядит как отвал башки» вне контекста. А потом вы смотрите на это в игре, и вы говорите: «Во-первых, я не вижу ничего из того, что мы сделали, а во-вторых, наша производительность получила удар под дых. Какой более хороший, более эффективный способ сделать это?».
Night School в конечном итоге использовала «короткий путь», как выразился Паскуаль, упростив ассеты для напитков до наклеек разного цвета, которые они наносили на простые стеклянные предметы. Например кувшин пива в Afterparty - это просто какая-то золотая жидкость, которая может немного расплескаться вокруг. Команда не заботится о добавлении таких деталей, как пена. Объект слишком маленький, и игрок все равно не заметит этого.
«Если вы захотите приблизить наши ассеты напитков, которые находятся в руках людей, вы увидите, что это очень простые фигуры, внутри которых есть простое плоское изображение с некоторыми визуальными эффектами, чтобы оно выглядело и ощущалось как своеобразная мультяшка», - говорит Кранкель. «Глаз игрока никогда не увидит этого, но если посмотреть с близкого расстояния, это будет грустное зрелище».
Решения и обходные пути, используемые Night School и Remedy, являются неотъемлемой частью создания игры, позволяющими оптимизировать ее производительность и сосредоточить внимание разработчиков на более важных вопросах. Но иногда даже с этими решениями, командам - даже сотням команд, как в случае с Remedy - этого все еще недостаточно.
РЕШЕНИЕ В АУТСОРСИНГЕ
Remedy не сделала ни одного автомобиля для своей игры Alan Wake 2010 года. Они отдали их все на аутсорс.
«Большинство реквизита, которое мы видим здесь, на самом деле предназначено для внешнего художественного аутсорсинга, потому что для гипер реалистичных игр так намного проще - сфотографировать стул, составить на него технические требования и отдать его кому-то на аутсорс за пределы студии, чтобы мы фактически смогли направить работу экспертов на интересные проблемы внутри самой компании», - говорит Тайпалвеси.
За последние 20 лет опора на команды, занимающиеся аутсорсингом всего и вся, стала весьма распространенным элементом процессом разработки. Поскольку игры становятся все более сложными, разработчики продолжают использовать внешние студии, чтобы справиться с некоторыми рутинными для них задачами, особенно когда речь идет о небольших ассетах, которые могут съедать время, доступное разработчикам для использования в решении более серьезных проблем.
Так обстоит дело и с Remedy, которая решает, какие ассеты будут разрабатываться внутри компании или за ее пределами, исходя из их важности, часто отдавая работу на аутсорсинг таким компаниям, как Virtuous или Dhruva. «Мы стараемся делать многое из обмундирования героев сами», - говорит Тайпалвеси. «Поэтому, если что-то предполагается к многократному использованию, мы стараемся сделать это внутри компании. Но если это одноразовый или кинематографический реквизит, или что-то, что создает сцену вокруг героев, определенно мы отдадим это на сторону».
«По сути, художники в команде могут решить, над чем они хотят работать: они могут выбирать ассеты для своей работы», - говорит он. «Большинство людей, которых мы здесь имеем, являются более созидателями высокого уровня, поэтому они строят локации, здания и прочее. Крупные мазки, так сказать, окружение. А затем многие дополнительные элементы, используемые для того, чтобы вдохнуть в сцены жизнь, приходят из аутсорсинга».
Точно так же в Night School полагались на сторонние организации для разработки и поддержки Afterparty - хоть и не всегда для мелких, сиюминутных ассетов. Как рассказывает Кранкель, студия привлекла подрядчиков к разработке, чтобы помочь с работой над сценарием игры - который он называет «массивным». Night School смогла справиться с художественной частью игры без посторонней помощи, говорит он, благодаря вышеупомянутому пересмотру визуальной составляющей. «Я думаю, что на самом деле это позволило выдержать высокий уровень контроля качества», - говорит Кранкель.
Для разработчиков, у которых нет таких ресурсов, которые есть у Remedy и Night School, использование аутсорсинговых студий или привлечение помощи внештатных сотрудников может оказаться невыполнимым вариантом, но это не означает, что совсем нет каких бы то ни было сторонних групп, которые они могли бы использовать.
Дэвид Веле (David Whele) - единственный человек, стоящий за инди-игрой 2018 года The First Tree (это приключенческая игра, повествующая о лисе, ищущей свою семью), - вынужден был работать над ней, лишь когда мог. В то время он работал на полную ставку в проекте виртуальной реальности The Void. А еще у него только что родился ребенок. Его свободное время было, что называется, весьма ограничено. «В один момент мне пришлось сказать себе: «Я могу играть в игры и смотреть телешоу, когда возвращаюсь домой с работы, или я могу заняться разработкой своей игры». И это то, что я должен был сделать». Веле, который теперь благодаря успеху The First Tree полностью свободный независимый разработчик, говорит. «Каждую ночь после того, как наш ребенок ложился спать, я работал около двух часов [...], а по выходным - два-три часа. И хотя давным-давно это перестало быть веселым, я добился той дисциплины, которая привела меня к финишной черте».
Добраться до этой финишной черты, говорит Веле, стало возможным только благодаря использованию таких магазинов, как Unity Store, которые продают готовые анимации, ресурсы, текстуры и окружающие предметы для общего пользования. Без них, говорит он, его игра никогда бы не вышла. «Я использовал эти [общедоступные ресурсы] как трамплин, чтобы сэкономить свое собственное время», - говорит Веле. «Это включало некоторые анимации у лисы и некоторые предметы окружающей среды. Я попытался применить к ним свой творческий подход, изменить их и переделать так, чтобы это не было простым набором ассетов, но даже несмотря на всю эту помощь и тысячи часов, которые я сэкономил с магазином, мне все еще потребовалось очень много работы, чтобы сделать самые маленькие вещи, такие как прыжок лисы».
«Я не знаю, понимают ли люди, как даже самая маленькая часть игры исходит от человека. Если вы разработчик-одиночка или небольшая инди-команда, это может быть весьма подавляющим», - говорит он.
Правильная анимация прыжка лисы оказалась настоящей головной болью для Веле, несмотря на то, что игрок даже и не подумал бы об этом, если бы она работала правильно. Веле говорит, что он мог использовать сторонний инструмент в Unity, чтобы настроить анимацию прыжка и улучшить ее - ему не нужно было изобретать велосипед, проектировать его с нуля и оживлять движение в игре. Но, с другой стороны, это отчасти и вызвало у него головную боль, говорит он. «Я пытался изменить прыжок, и это делало его намного сложнее, чем если бы я делал его сам с нуля - если понятно, о чем я. Зачтем это как недостаток. Хорошо? Вы, в своем роде, ограничены результатом труда других людей».
Аутсорсинг и магазины-библиотеки ассетов сторонних разработчиков помогли сделать процесс разработки мягче во многих отношениях, предоставив студиям и разработчикам возможность передавать мелкомасштабные задачи компаниям, специализирующимся на таких вещах. Но видеоигры становятся все сложнее и дороже. Со следующим поколением консолей на горизонте разработчики уже начинают смотреть в будущее, оценивая, как они будут решать те же проблемы, что и сейчас, но на более глубоком уровне.
БУДУЩИЕ ПРОБЛЕМЫ
Эндрю Прайс (Andrew Price) является генеральным директором и основателем Poliigon, стороннего сервиса, предлагающего разработчикам текстуры, модели и ресурсы в высоком разрешении для использования во всех продуктах творчества, от игр и фильмов до архитектуры. Прокрутите веб-сайт Poliigon, и вы сможете найти всё: от предподготовленных блендеров до штепселей питания и рисунков для ковров.
Подобно тому, как Wehle использует магазин Unity, Poliigon предлагает разработчикам фотореалистичные ассеты, которые они могут подключать к своим играм без необходимости делать что-то маленькое или незначительное с нуля. Компания предлагает это по дешевке, ежемесячная подписка стоит всего лишь 20 долларов за всю свою библиотеку.
Компания Прайса ускоряет компаниям процесс разработки, избавляя их от необходимости выделять время на разработку основ, охватывающих создаваемые миры - и у него есть некоторые идеи о том, как разработчики смогут продолжить оптимизировать свой процесс в будущем.
В прошлом году Прайс выступил с докладом на конференции Blender 2018. В нем он привел расчеты, как стоимость одного кадра в игре Ubisoft (Tom Clancy's The Division) составила около 200 000 долларов - ассеты, такие как герои-персонажи, берут на себя основную часть расходов, около 49 000 долларов, а небольшие части, такие как мусор, стоят чуть менее 3 500 долларов. Его оценки основаны на средней заработной плате разработчиков игр в сочетании с тем, сколько времени обычно требуется разработчику уровня ААА-проектов для создания подобного ассета. По словам Прайса, ассеты «неоправданно дороги».
«В основном - все упирается во время», - говорит он. «Это все связано с затрачиваемым временем».
Прайс приводит в пример разработку и проектирование жилого дома в типичной игре уровня ААА. Во-первых, разработчику необходимо задать широкие штрихи у здания - такие параметры, как его ширина, количество этажей и т. д. Затем он должен будет принимать более конкретные решения, такие как ширина окон у здания, независимо от того, будет ли граффити на внешних стенах или украшения типа растений. Еще есть этап текстурирования, через который должно пройти жилье, когда разработчики выбирают такие детали, как ширина и тип кирпича, из которого сделано здание. В совокупности, по оценкам Прайса, эта работа может занять несколько дней, обойдясь примерно в 4000 долларов.
Но это всего лишь одно здание. Для разработчика, желающего создать различные варианты одного и того же здания, заданные параметры и мелкие детали, разбросанные вокруг, могут легко привести к большой дополнительной работе. «Допустим, вы просто хотите изменить количество этажей, и вот теперь это полностью испортило все, что было, потому что теперь декорирование окон не выровнено, а лестницы не совпадают», - говорит Прайс. «Если вы захотите размножить эти квартиры, вам придется переделывать большую часть работы, потому что в тот момент, когда вы меняете модель, текстуру также нужно будет менять, так что вам придется их перерисовывать. Если вы работаете таким традиционным способом - плохие новости: он просто не масштабируется».
«В некотором смысле, я вижу, что рабочие процессы, которые применялись в девяностые для создания игр или чего-то еще, не сильно изменились к сегодняшнему дню», - говорит он. «Многие люди до сих пор вручную моделируют эти здания».
Одним из предлагаемых решений Прайса является процедурное генерирование. Вместо того, чтобы вручную строить каждое жилище и мелкие детали внутри него, разработчики могут настроить программу, которая сгенерирует бесконечные вариации здания с заданными размерами и параметрами.
«Что-то вроде, «а давайте не просто сделаем один ассет, а создадим систему, которая позволит нам сгенерировать тысячу вариантов такого ассета», - говорит Прайс. «И теперь, когда вы настроили все эти разные вещи одну за другой, просто используя программное обеспечение под названием Houdini, - как только вы это получите, вы можете начать генерацию, и она буквально выплюнет бесконечные вариации в пределах установленных вами диапазонов.
«Я думаю, что игровая индустрия постепенно подходит к этому моменту», - продолжает он. «За последние пару лет вы должны были слышать много таких разговоров с ведущими игровыми студиями - когда они, например, рассказывали о том, как они создавали Far Cry, последнюю игру Spider-Man. Они действительно используют эти процедурные инструменты. Я думаю, что они станут намного более обыденными, чем многие думают».
По мере того, как игровые миры становятся все больше, а ожидание игроков относительно наполнения их мельчайшими деталями, чтобы они ощущались более реальными, увеличивается, такие варианты, как предложение Прайса, предлагают способы упростить процесс разработки. И по мере того, как следующее поколение консольного оборудования становится к нам все ближе и ближе, разработчики, выступающие за эту версию, уже подыскивают для себя варианты - или, по крайней мере, признают, что им стоит задуматься об этом.
«Все наши исходные ресурсы в настоящее время имеют более высокое разрешение, чем на самом деле в игре», - говорит Тайпалвеси. «Поэтому, учитывая текущие ограничения, которые мы имеем из-за технологий, платформ и всего остального, мы уже склонны изготавливать эти ассеты с более высокой степенью детализации, потому что гораздо проще снизить качество, чем увеличить его. Уменьшение происходит автоматически, в то время как увеличение предполагает ручную работу».
«Сейчас мы предстаем близорукими», - смеется Кранкель. «Мы думаем только об играх прямо перед нашим носом. Но да, я думаю, что в конечном итоге, если ожидания будут продолжать расти с точки зрения детализации, то нам по-прежнему придется прибегать к аутсорсинговым решениям, которые мы используем таким образом, чтобы не привлекать к ненужной работе по пятьдесят-сто человек. Мы, как студия, не хотим ставить себя в ситуацию, в которой мы подвергнемся большому риску».
Если чему история и учит, так это тому, что когда появятся игровые приставки нового поколения, большинство из этих проблем станут только сложнее. И хотя это и становится неизбежным злом, разработчики всех мастей не только примут такой вызов, но и найдут разумные способы обойти его. Обратного пути скоро не станет. Игроки ожидают от игр все большего, и визуально, и относительно механик.
«Мы стараемся быть хотя бы на полкорпуса впереди, когда это возможно», - говорит Тайпалвеси. «Но да, это гонка. Это игра про технологичность и художественную состоятельность, позволяющая разработчикам оставаться на переднем краю возможностей платформ, которые они используют для создания игр».
Источник: Polygon