Компьютерные игры переходят на новый уровень качества, предлагая игрокам виртуальное окружение, которое максимально повторяет реальность. Такой скачок стал возможным благодаря технологии трассировки лучей, которую председатель программного менеджмента Xbox Джейсон Рональд называет «святым граалем» компьютерной графики. Вот почему трассировка лучей является такой прорывной.
Как графику в играх приближают к реальности
Люди воспринимают объекты в значительной степени благодаря тому, как они освещены и тени генерируют. В реальном мире любой источник света – экран компьютера, смартфона, солнце, фонарик – генерирует световые лучи. Эти лучи перемещаются по прямой пока не соприкоснутся с каким-то объектом. В зависимости от материала поверхности этого объекта часть лучей отражается и направляется к следующей преграде, где снова отражается, и так до полного рассеивания.
Часть лучей попадает в глаза наблюдателя, который по освещенности разных участков определяет выпуклые и впалые области на объектах, их взаимное расположение и тому подобное. Для воплощения этого в виртуальности нужна большая вычислительная мощность.
Підписуйтесь на наш канал в Telegram: https://t.me/techtodayua
Компьютеры прошлых лет были значительно слабее, чем сегодня. Поэтому десятилетиями игростроительные студии имитировали освещение и тени с помощью, например, карт освещения. Это заранее запрограммированные карты освещения объектов, которые хорошо смотрятся в статике. Но при перемещении по виртуальной сцене иллюзия ломается. Например, в играх при удалении от зеркала может исчезать отражение.
С начала 2000-х в индустрии начали использоваться шейдеры. Они поднимали качество динамического освещения, но нуждались в увеличенной вычислительной мощности. Поэтому разработчики также шли на хитрости, например, вычисляли лишь часть объектов в сцене.
Почему трассировка лучей
Трассировка лучей на компьютерах выполняется по схожим принципам с реальностью: виртуальный источник света генерирует лучи, и вычисляется путь каждого из них к виртуальной камере, включая отражения от объектов. Это позволяет генерировать реалистичное освещение и тени.
Однако трассировка лучей требует очень больших вычислительных мощностей. Даже сегодня можно увидеть, что демонстрации трассировки чаще всего проводят для гладких, почти зеркальных поверхностей. Матовые шершавые поверхности выполняют гораздо больше отражений лучей, что требует существенного роста мощностей.
Почему сейчас
Технология трассировки лучей не новая, однако она требует значительной вычислительной мощности. Поэтому ее много лет используют в кинематографе, где на обработку одного кадра можно потратить много времени. Сутки на обработку одного кадра не вызывает недоумения у специалиста по кино.
Для компьютерных игр вычисления необходимо выполнять в реальном времени, и «железо» того времени не могло справиться с такой задачей. Ведь компьютеру нужно успевать обсчитывать все лучи за 1/60 секунды. Только сейчас «железо» достигло необходимой мощности. Прорыв произошел, когда Nvidia в прошлом году объявила о выпуске видеокарт со специальными блоками для вычисления трассировки лучей. Также Microsoft встроила соответствующие технологии в Windows 10.
Трассировка лучей для всех
Сегодня использование трассировки лучей остается нишевым, однако все может измениться с выходом игровых приставок следующего поколения – Microsoft Xbox Series X и Sony PlayStation 5. Они основаны на чипах от Advanced Micro Devices (AMD), которые имеют блоки трассировки лучей.
Все больше игростроительных студий привлекают трассировку лучей в свои проекты. Разработанная в 2009 году Minecraft от студии Mojang, которая имеет статус игры с наибольшими продажами в истории, в 2020 году получила версию с трассировкой лучей.
Вице-президент подразделения технологий симуляции Nvidia Рев Лебаредиан говорит, что толчок к популяризации трассировки лучей предоставил также карантин. Люди хотят чувствовать себя рядом, находясь в изоляции. Виртуальная и дополненная реальность может в определенной мере обеспечить такое ощущение.
С таким мнением соглашается и главный архитектор игровых решений AMD Фрэнк Азор. Он считает, что коронавирус будет способствовать увеличению спроса и прогресса.
Что дальше
Видеокарты хорошо умеют делать одно дело – одновременно проводить большое количество одинаковых вычислений. Поэтому у них хорошо получается вычислять лучи, которые распространяются параллельно друг другу. Проблемы возникают, когда лучи должны пересекаться, а именно этот эффект создает реальное ощущение освещения и теней.
Заставить параллельные процессы обмениваться данными между собой сложно. Рональд считает, что решение этой проблемы является основной задачей в улучшении компьютерной графики в ближайшие 5-7 лет.
Тем временем игры продолжат использовать различные трюки для экономии вычислительной мощности. Для большинства игр этого хватит, чтобы придать привлекательную картинку.
По материалам: BBC