Скрытая технология, которая делает тени в Assassins Creed более живыми и не требует хранения данных объемом 2 ТБ

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


🚀 Хочешь улететь на Луну вместе с нами? Подписывайся на CryptoMoon! 💸 Новости крипты, аналитика и прогнозы, которые дадут твоему кошельку ракетный ускоритель! 📈 Нажмите здесь: 👇

CryptoMoon Telegram


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

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

Что первым привлекло мое внимание во время презентации Лопеса на GDCC, так это определенная последовательность графиков, которые он показал и которые касались расчетов освещения для Assassin’s Creed Shadows. Лопес отметил, что если бы освещение в Assassin’s Creed Shadows было обработано аналогично тому, как это делалось в Assassin’s Creed Unity, потребовалось бы почти два года для предварительного расчета и рендеринга всех данных освещения, а также приблизительно 2TB пространства для хранения этой информации. (Для всей игры Assassin’s Creed Shadows требуется место на жестком диске размером 115GB.) Эти цифры демонстрируют значительный разрыв между старыми играми и современными тройными А-титулами. Как только я увидел их, мне захотелось понять их последствия.

В играх Assassin’s Creed Unity и Syndicate Лопес отметил, что изображённые города были компактными районами площадью примерно четыре квадратных километра. Для рендеринга глобального освещения (наряду с другими методами освещения) разработчики использовали равномерные световые зонды в этих играх. По сути, эти зонды служат точками на карте, собирающими информацию о свете, проходящем через пустые пространства внутри области, которую затем используют для отбрасывания света как на статические, так и на динамические объекты в этом пространстве. В воссоздании Парижа Unity зонды были расставлены каждые 50 сантиметров, то есть собирали данные об освещении каждый полметра по всему городу.

Давайте сделаем небольшой отступ и поговорим о глобальном освещении (GI). По сути, это термин, охватывающий несколько методов для имитации естественных световых эффектов, особенно непрямого освещения. Это может включать такие техники как кубические карты, окклюзия окружающей среды, отражения в пространстве экрана, пробное освещение и другие. Если вам интересно узнать больше, Digital Foundry подготовил отличную статью, которая разъясняет эти концепции ясно и кратко.

Как преданный поклонник игр, я был заинтересован в словах Лопеса о том, что компактный размер этих меньших игровых миров позволил достичь исключительного качества освещения, несмотря на необходимость значительного объема памяти для хранения данных. Однако начиная с Assassin’s Creed Origins масштаб наших миров увеличился экспоненциально до 256 квадратных километров. Если бы мы включили всю эту информацию об испеченном свете, то файлы игры стали бы непомерно большими и буквально ‘взорвались’. Чтобы избежать этого, наша команда разработала динамическую систему освещения.

Говоря проще, Лопес заявил, что мы адаптируем количество точек измерения (плотность проб) в зависимости от сложности сцены. Например, плотно населенные городские районы сохраняют расстояние между пробами 50 сантиметров, тогда как в открытых пространствах типа пустынь или лесов разрешение снижается. Это похоже на то, как художники создают так называемую ‘GI density map’. Они могут сосредоточиться на высоком качестве освещения там, где это наиболее важно, что, по словам Лопеса, значительно уменьшает размер данных при сохранении высокого визуального качества в критически важных местах.

Важно отметить, что игра Assassin’s Creed Unity предлагала только четыре различных времени суток и минимальные погодные эффекты в отличие от своего преемника, игры Assassin’s Creed: Syndicate, которая может похвастаться 11 отдельными периодами времени и динамической системой погоды. Благодаря этим особенностям, освещение в игре меняется, создавая визуально убедительные результаты.

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

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

Говоря проще, игровые миры в Unity были относительно малы и однородны по сравнению с современными играми серии Assassin’s Creed, такими как Shadows. Если бы для создания больших пространств использовались похожие стратегии с более сложными визуальными эффектами и изменяющейся плотностью объектов, игра получилась бы невероятно обширной.

Прошло довольно много времени с момента выхода Assassin’s Creed Unity — более десяти лет, если быть точным! В этой игре значительно развилось множество аспектов. Одним из наиболее заметных достижений является трассировка лучей, функция теперь доступная всем пользователям PlayStation 5, Xbox Series X|S и примерно для 30-40% видеокарт согласно результатам исследования Steam Hardware Survey на май этого года.

Лопес заявил, что трассировка лучей значительно изменила наше видение освещения, принимая во внимание как творческие, так и практические аспекты. Ранее освещение в основном предварительно рассчитывалось с использованием глобальной иллюминации, отражений, окклюзии окружающей среды и так далее по стандартным методам. Это означало, что освещение не могло адаптироваться к изменениям внутри окружения. Перемещение или изменение архитектурного элемента делало существующее освещение устаревшим. Команде тогда требовалось пересчитывать данные освещения, что занимало от нескольких часов до дней. В Ubisoft мы планировали вычислительные задачи для выполнения в ночное время, чтобы художники могли получать обновленное освещение каждый день. Однако этот процесс все еще значительно тормозил итерации.

Рейтрейсинг освободил художников от многих этих ограничений, сказал он.

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

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

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

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

Лопес объяснил: «Когда открываются двери, интерьеры естественным образом становятся светлее. Разрушенные предметы добавляют к общей освещённости. Атмосфера сцены зависит от сезонного освещения. В некоторой степени эти эффекты невозможно полноценно достичь без использования трассировки лучей.»

Команда внесла изменения в движок Anvil, инструмент часто используемый в серии Assassin’s Creed компанией Ubisoft. Одним из этих изменений стала реализация системы кодирования цвета Academy Color Encoding System, признанного стандарта цветов, используемого в киноиндустрии для поддержания единообразия работы множества людей на различных устройствах. Это гарантирует, что члены команды, работающие на разных машинах, в различных локациях и использующие разные приложения для разработки игры, оперируют одним и тем же цветовым данными. Такой подход ведет к более единому и реалистичному конечному продукту, где персонажи, здания, растительность и эффекты выглядят так, как будто они принадлежат одной игре и имеют достоверный вид. Таблицы поиска цвета (LUTs) позволяют команде настраивать визуальную тональность и цветовую градацию в соответствии с погодными условиями и окружающими средами.

При обеспечении точного воспроизведения теней в игре особое внимание уделялось мастерству световых эффектов. Учитывая повсеместную доступность экранов HDR сегодня, разработчики имеют больше свободы для отображения широкого спектра света и темноты; тем не менее, ‘темное’ все еще может выглядеть как полная чернота. Даже лучшие дисплеи зависят от индивидуальных предпочтений, характеристик дисплея и возможностей точности цветопередачи консолей. Это стало особенно важным, когда Ubisoft приняла решение разработать давно ожидаемую игру Assassin’s Creed, сосредоточенную вокруг ниндзя.

Согласно Лопесу, мы внесли корректировки в ключевые аспекты наших систем освещения и яркости, чтобы они более точно функционировали в слабо освещенных средах.

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

По словам Лопеса, все эти изменения в совокупности привели к связному и отзывчивому визуальному дизайну, где каждый элемент выглядит взаимосвязанным. Особенно важным стало использование теней, которое запустило инновационный цикл, который способствовал продвижению как Anvil, так и Assassin’s Creed вперед.

Для большинства из нас Assassin’s Creed Shadows служит демонстрацией того, как дизайн видеоигр приспосабливается к современным технологиям, удовлетворяя потребности одновременно и игроков, и дизайнеров. Создатели крупных проектов, таких как Shadows, имеют доступ к инновационным методам ускорения производства игр без ущерба для качества. В результате мы встречаем более интерактивные окружения, которые кажутся живыми и реагирующими.

‘Изображение предоставлено: Ubisoft’

Смотрите также

2025-06-28 15:10