[Deus Ex: Mankind Divided] Проектирование уровней

[Deus Ex: Mankind Divided] Проектирование уровней.

Автор: | Тип статьи: Перевод | Переводчик: Tinuviel | Редактор: m00n1ight | Размещение: m00n1ight, 17:42 (обновлено: 2023-02-27 00:12) | Слов: 2190 | Время чтения: 0 ч 8 м | Аудитория: Разработчики | Уровень читателя: Начинающий | Просмотры: 2753

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

Вступление

С программами для разработки компьютерных игр я познакомился в 1995 году, когда мне было 14 лет. Тогда я установил Lightwave 3D, Truespace и 3DS третьей версии. Я восхищался трёхмерной графикой «Газонокосильщика». Помню, как рисовал самолёты и ландшафты, используя лишь треугольники. Для меня открылся целый мир треугольников.

В 18 я уже создавал трёхмерные модели зданий, а чуть позже началась моя карьера в игровой индустрии. Я устроился на работу в Microids, где работал над Post Mortem и Syberia II, был главным художником Still Life, хотя во всех этих играх не было по-настоящему трёхмерной графики. Позднее я перешёл в Gameloft, где работал над разными проектами для мобильных платформ, участвовал в разработке Rainbow Six Vegas и Prince of Persia (2008) от Ubisoft, и в конце концов осел в Eidos Montreal, занявшись разработкой Deus Ex: Human Revolution.

[Deus Ex: Mankind Divided] На скриншоте: Прага.

Deus Ex: Mankind Divided

Deus Ex — игра о выборах и последствиях. Разрабатывая игровой мир, мы не могли позволить игроку добраться до цели без приключений. Отправившись выполнять очередное задание, он должен внимательно изучить окружающее пространство и попробовать разные варианты. Важнее всего было придать игровому миру ощущение целостности и завершённости, объединить сценарий с визуальным повествованием. Вы читаете электронные письма или записные книжки, и у вас в голове постепенно вырисовывается картина происходящего, вы проникаетесь духом вселенной. Я думаю, в этом мы превзошли многих.

Мне очень понравился мир Deus Ex и я могу задолбать кого угодно рассуждениями о будущем кибернетических улучшений. Когда я впервые приступил к работе над Deus Ex, мне пришлось как следует проникнуться его вселенной. На мой взгляд, это обязательный ритуал для каждого, кто хочет найти себя в игровой индустрии. Главный сценарист Мэри ДеМарль посоветовала мне несколько книг, после чего я разом проглотил всю библиографию Уильяма Гибсона. Я прочитал практически все книги Рэя Курцвейла и множество произведений других авторов с единственной целью — полюбить мир Deus Ex. Что мне прекрасно удалось: из всех игр, над которыми я когда-либо работал, эта серия понравилась мне больше всего.

[Deus Ex: Mankind Divided] На скриншоте: Полицейская машина.

Производственный процесс

Для начала мы должны определиться со способами прохождения задания... что довольно сложно, учитывая, что каждый проходит Deus Ex по-своему. Впрочем, мы склонны полагать, что большинство пойдёт по пути наименьшего сопротивления. То есть получится что-то вроде: «Дженсен приземляется на крыше, спускается на несколько этажей, находит в кабинете банкира компромат, покидает здание через парковку». Разумеется, это сильно упрощённый пример. В первую очередь важно определиться с объёмом и тематической направленностью художественного оформления. В приведённом ранее примере потребуются одна игровая область под крышу, одна под офис и одна под парковку. Это самая общая информация, от которой уже можно отталкиваться.

[Deus Ex: Mankind Divided] На скриншоте: Снега и горы.

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

[Deus Ex: Mankind Divided] На скриншоте: Статуя.

Следующий шаг — подготовка альфа-версии. Мы заполняем необходимыми модулями каждую тематическую группу. На данном этапе крыша уже должна выглядеть как крыша, а офис как офис. Чтобы окружение не казалось излишне пустым и стерильным, разработчики уровней расставляют различные объекты, помогающие игроку сосредоточиться на важных деталях (пустые пространства притягивают взгляд, отвлекая от остального).

Затем мы придаём игровым областям более «обжитой» и правдоподобный вид. На этом же этапе проводится тонкая настройка основного окружения. Изначально мы стараемся как можно скорее подготовить архитектуру карты для альфа-тестирования и лишь затем приступаем к расстановке объектов и разделению игровых пространств.

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

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

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

[Deus Ex: Mankind Divided] На скриншоте: Здание в Праге.

Игровой движок Dawn Engine

Основное преимущество Dawn Engine — способность одновременно обрабатывать практически неограниченное количество игровых ресурсов. Хотя ограничения, конечно, есть, и в какой-то момент мы с ними столкнулись, но тем не менее, это отличный движок для масштабных проектов. Кроме того, ресурсоориентированность движка расширила возможности художников, во времена разработки Human Revolution во многом уповавших на программистов. Есть и отдельная команда, отвечавшая за работу с «умными объектами», с которыми вы взаимодействуете в процессе игры. В её ведение попадают практически все игровые объекты, от оружия и связанных с ним механик до роботов, машин и книг, при попадании в которые в стороны летят клочья бумаги.

[Deus Ex: Mankind Divided] На скриншоте: Детализация окружения.

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

Этим занимаются разработчики и художники окружения. Разработчики отвечают за сценарии и характерную для серии Deus Ex вариативность прохождения. Они же планируют общую структуру уровней. Художники создают модели и текстуры, стараясь эффективно использовать память и мощности видеокарты, а также придать спроектированным структурам правдоподобный вид. Разработчики окружения видят в уровне площадку, развлекающую игрока и развивающую сюжет, а для нас, художников, важнее отразить суть игрового мира Deus Ex. Время от времени это приводит к конфликтам, в которых мы стараемся выработать компромисс, устраивающий обе команды.

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

[Deus Ex: Mankind Divided] На скриншоте: Вывеска с иероглифами.

Думаю, вентиляционные ходы знакомы каждому поклоннику серии Deus Ex. Мы так и не сделали их архитектурно правдоподобными. Разработчики окружения постоянно использовали их как альтернативный путь, однако логически обосновать их наличие не всегда удавалось. Чтобы хоть как-то отойти от шаблонных вентиляционных ходов, мы воспользовались отверстиями в межкомнатных перегородках и техническими пространствами для прокладки кабелей.

Разработанные вами окружения в любое время суток выглядят отлично: хоть днём, хоть ночью. Как вам это удалось?

Ключевую роль здесь играет, конечно же, освещение. Однако не стоит забывать о ресурсоориентированности движка Dawn Engine, позволяющего задать свойства и поведение любому объекту на карте. В данном случае происходит проверка равенства переменной, например, 2 для ночи или 3 для дождливой погоды, и запуск присвоенного значению сценария обработки объектов. Благодаря Dawn Engine, мы на лету меняем параметры стекла или, например, применяем к земле эффект сильной влажности во время дождя. Для создания некоторых эффектов потребовались немалые усилия, но мы справились. В конце концов всё упирается в сроки разработки.

[Deus Ex: Mankind Divided] На скриншоте: Дженсен прячется за машиной.

Игровые сцены наполнены множеством едва заметных деталей и объектов. Это уникальный уровень ручной проработки игрового мира. А сколько там «пасхалок»! Расскажите, как удалось создать столь правдоподобные ландшафты?

Именно этому аспекту мы уделили особое внимание, в том числе и в разработке Human Revolution. С тех пор технологии шагнули вперёд и теперь подобный уровень детализации доступен практически всем... поэтому пришлось как следует постараться. Отдельно я бы выделил «Город големов», впитавший множество художественных образов киберпанка. Приступив к разработке, мы попросили главного художника Мишеля Ланоя разместить в игровой области как можно больше проводов и кабелей. Чем больше, тем лучше. Как оказалось, он большой фанат проводов и кабелей, так что разбросал он их действительно от души. Думаю, столько нет ни в одной другой игре. *смеётся*

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

[Deus Ex: Mankind Divided] На скриншоте: Улица Праги.

Мир Deus Ex удивительно проработан — так много уровней и игровых областей — и без загрузочных экранов! Как удалось настолько оптимизировать игровое окружение? Mankind Divided отлично работает на любой платформе и выглядит замечательно.

Благодарить стоит технических специалистов и разработчиков Dawn Engine. Впрочем, без нас не обошлось. Использование уникальных объектов с такой детализацией в масштабах тесной, в общем-то, Праги, быстро приводит к нехватке памяти. Если бы мы «запекали» хотя бы некоторые ресурсы игры на основе моделей высокого разрешения, вы бы никогда её не запустили.

[Прим. пер. — Baking (дословно «обжиг, запекание») — консолидация системы данных в упрощённой и более постоянной форме. В моделировании используется, например, для преобразования нескольких текстур сцены в одну текстуру или для «запекания» игры света и тени не на картинку, а на текстуру, что позволяет существенно экономить производительные ресурсы и время на обработку моделей].

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

Поэтому для всех объектов больше табуретки мы делали две развёртки. Одна состояла из множества островков, отражающих детали конкретной части полигональной сетки. Обычно это всякие механические детали. Мы растягивали их как можно сильнее. В каком-то смысле мы сжимали текстуры вручную, растягивая её часть и укладывая в развёртку на очень тонком, детальном уровне. На это уходит много времени, да ещё и приходится вводить дополнительные вершины. Помимо первой развёртки мы использовали и вторую, которая создавалась обычным способом, более привычно и естественно, чтобы покрыть ту самую механическую основу текстурами материалов и плиточными текстурами. Естественно, что мы старались втиснуть как можно больше текстур в канал RGB. Для этого мы ужимали их в градациях серого в каждом канале с использованием формата BC1 или исключали синий канал из карты нормалей текстуры, выделяя его для иных целей.

[Deus Ex: Mankind Divided] На скриншоте: Барак в «Городе големов».

Этот жилой барак «построен» Мишелем Лануа, дизайнером уровней, отвечавшим за проработку «Города големов». Отличный пример «оптимизации» текстур с помощью развёртки. Механические детали размещены на наборе текстур, представленном в файле с отражениями. Мы растягиваем развертку UV1 для каждой детали, для какой только можно.

[Deus Ex: Mankind Divided] Карта нормалей в Хенгша.

Пример крайних мер, которых мы стараемся избегать из-за времязатратности — карта нормалей, использованная для всех архитектурных объектов в Хенгша (Deus Ex: Human Revolution). Такое сжатие мы больше не используем, но текстура демонстрирует, как мы в принципе растягиваем детали моделей. Эта карта нормалей использовалась для большей части зданий в нижних кварталах Хенгша.

[Deus Ex: Mankind Divided] Растягивание.

Посмотрите на рисунок — мы взяли кусочек общей текстуры Хенгша и «растянули» его, добавив дополнительных вершин, причём весьма существенно. Так сравнительно небольшой набор текстур можно применять для множества разнообразных объектов даже в очень высоком разрешении. Вот только времени надо прорву — его на отработку и «обрезку» геометрии (на рисунке отмечена тонкими серыми линиями) уходит много. Вообразите, что было бы, если бы тот барак из «Города големов» мы моделировали по этому методу. Полигональных сеток не напасёшься.

[Deus Ex: Mankind Divided] Карта отражений барака.

Мы отказались от крайностей Human Revolution и больше не используем описанный метод для зданий, но применяем для других объектов: оружия, машин, роботов, мебели и вообще всего крупнее табуретки, за исключением объектов с небольшой детализацией (например, куска скалы или железобетонного блока). Текстура с отражениями — отличный пример того, как уменьшить объём работы, требующийся для создания полигональных сеток, путём сохранения больших шаблонов механических деталей с последующим «растягиванием» групп деталей вместо того, чтобы проделывать это снова и снова.

[Deus Ex: Mankind Divided] На скриншоте: Дубай.

Для изображения скошенных краёв мы, по сути, разрывали нормаль вершины [Прим. пер. — это вектор, ассоциированный с вершиной, предназначенный для замены истинной геометрической нормали к поверхности. Обычно нормаль вычисляется как нормализованное среднее нормалей поверхности граней объекта, содержащих вершину]. Нам не хватало объёмов памяти, чтобы проецировать нормаль вершины на текстуру, поэтому мы разработали инструмент, с помощью которого можно было задать, для каких вершин нужны скошенные нормали, причём эту информацию он навсегда сохранял в памяти для любой заданной полигональной сетки, так что даже при существенном изменении сетки информация о нормалях вершин сохранялась. Это важно, ведь разрыв нормалей вершин — дело рискованное, и любое изменение сетки сильно влияет на нормали. Так что мы просто сохраняли поверхности, которые нужно было скашивать, и автоматически обрабатывали нормали заново каждый раз при экспорте. На это уходило больше памяти, отведённой на обработку вершин, зато мы существенно экономили ресурсы, не помещая всю эту информацию непосредственно в текстуры.

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

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

Поиск по сайту

Сообщения на форуме | новые

Baldur's Gate III на форуме Baldur's Gate III.
Последнее сообщение оставил 13th_Ka7aHe4 (2024-12-03 в 20:57). Ответов: 1601.
Новости стратегий и варгеймов на форуме Стратегии, варгеймы, тактики.
Последнее сообщение оставил Товарищ (2024-12-03 в 20:25). Ответов: 567.
Шеймус Янг о сюжетной линии Гильдии воров в Skyrim на форуме The Elder Scrolls V: Skyrim.
Последнее сообщение оставил FromLeftShoulder (2024-12-03 в 18:58). Ответов: 21.
Создание разветвлённой диалоговой системы. Часть 3 на форуме Обсуждение статей.
Последнее сообщение оставил m00n1ight (2024-12-03 в 16:53). Ответов: 3.
Бордель услаждения интеллектуальных страстей на форуме Оффтопик - Разное.
Последнее сообщение оставил silmor_senedlen (2024-12-03 в 16:14). Ответов: 9172.
Neon Blood на форуме Всё остальное | Инди.
Последнее сообщение оставил silmor_senedlen (2024-12-03 в 14:36). Ответов: 9.
[В разработке] Urban Strife на форуме Всё остальное | Инди.
Последнее сообщение оставил m00n1ight (2024-12-03 в 12:48). Ответов: 59.
[В разработке] Exanima на форуме Бродилки по подземельям.
Последнее сообщение оставил m00n1ight (2024-12-03 в 12:44). Ответов: 16.
Sovereign Syndicate на форуме VN/CYOA/NRPG.
Последнее сообщение оставил m00n1ight (2024-12-03 в 12:30). Ответов: 16.
[В разработке] Kingdom Come: Deliverance 2 на форуме Всё остальное.
Последнее сообщение оставил m00n1ight (2024-12-03 в 12:28). Ответов: 29.

Ожидаемое | таблица

Новости C.O.R.E.

Статьи C.O.R.E.

Новости RPG Codex

Новости RPG Watch

Новости RPG Nuke

Оставьте свой отзыв: QR-код для отзывов в «Яндексе».