Что такое трассировка лучей?
Недавно демонстрация от Epic, создателя игрового движка Unreal, подняла брови из-за его фотореалистичных световых эффектов. Техника является большим шагом вперед для трассировки лучей. Но что это значит?
Что делает Ray Tracing
Проще говоря, трассировка лучей - это метод, который графический движок использует для расчета того, как виртуальные источники света влияют на элементы в их среде. Программа буквально следы лучи света, используя расчеты, разработанные физиками, которые изучают поведение реального света.
Графические движки, такие как Unreal или Unity, используют трассировку лучей для рендеринга реалистичных световых эффектов - теней, отражений и окклюзий - без необходимости отображать их как свои отдельные объекты. Хотя это довольно интенсивно с точки зрения обработки, использование его для визуализации только того, что камера (то есть проигрыватель) должна видеть в любой момент, означает, что он может быть более эффективным, чем другие, более старые методы моделирования реалистичного освещения в виртуальных средах. Специфические световые эффекты визуализируются в одной двумерной плоскости с точки зрения зрителя, а не постоянно во всей среде.
Все это достигается с помощью некоторой невероятно сложной математики, как с точки зрения фактического определения поведения виртуального источника света, так и степени того, насколько эти эффекты видны зрителю или игроку в любой момент времени. Разработчики могут использовать менее сложные версии тех же методов, чтобы учесть менее мощное оборудование или более динамичный и плавный игровой процесс..
Трассировка лучей - это общий подход к графике, а не какой-либо конкретной технике, хотя он постоянно совершенствуется и совершенствуется. Его можно использовать в предварительно отрендеренной графике, например, в спецэффектах, которые можно увидеть в голливудских фильмах, или в движках реального времени, например, в графике, которую вы видите в середине игры во время игры на ПК.
Что нового в трассировке лучей?
Демонстрация, которая недавно получила трассировку лучей в новостях, показана на видео ниже. Звездные войны Эскиз с участием штурмовиков с очень плохим временем. Это было продемонстрировано на конференции разработчиков игр на прошлой неделе. Он был создан Epic Games (создателями вездесущего Unreal Engine) в сотрудничестве с NVIDIA и Microsoft, чтобы продемонстрировать новые методы трассировки лучей..
Вне контекста это просто тупое видео. Но важным моментом является то, что он воспроизводится в реальном времени, как видеоигра, а не заранее, как фильм Pixar. На видео ниже показано, как презентер масштабирует камеру через сцену с помощью элементов управления в реальном времени, что невозможно при использовании предварительно визуализированной графики..
Теоретически, если ваш игровой компьютер достаточно мощный, он может генерировать такую же графику в любой игре, используя новые световые эффекты с трассировкой лучей в следующей версии демо-версии Unreal..
Технология действительно блестящая (понимаете?), Потому что эта конкретная демонстрация включает в себя множество отражающих и зеркальных поверхностей с неправильной геометрией. Проверьте, как окружающая среда отражается в изогнутых панелях хромированной брони капитана Фазмы. Не менее важно заметить, как оно более тускло и рассеянно отражается от белой брони обычных штурмовиков. Это уровень реалистичного освещения, которого нет в современных играх.
Это заставит мои игры выглядеть потрясающе?
Ну да - в очень конкретных обстоятельствах. Этот продвинутый уровень трассировки лучей облегчит видеоиграм рендеринг более впечатляющих световых эффектов, но фактически не делает полигональную структуру графики более детальной. Это не повышает разрешение текстур и не увеличивает плавность анимации. Короче говоря, освещение будет выглядеть реалистично, и на этом все.
Демонстрация выше особенно драматична, потому что разработчики выбрали персонажей и среды, где почти каждая поверхность либо сияет, либо отражает свет. Если вы используете ту же технологию для рендеринга, скажем, главного героя Ведьмак Во время езды на лошади по сельской местности, вы не увидите никаких отражающих поверхностей, кроме его меча и, возможно, воды. Важно отметить, что методы трассировки лучей не помогут улучшить рендеринг его кожи, меха лошади, кожи его одежды и т. Д..
Заголовки, которые пришли из этой демонстрации, утверждающие, что это приведет к «фильму-блокбастеру», были немного гиперболическими - это может быть правдой, если вы играете на уровне, установленном в зале зеркал, но это все.
Когда я увижу это в моих играх??
Демонстрация GDC была примером запатентованной технологии трассировки лучей под названием RTX, которая в настоящее время разрабатывается NVIDIA. Он дебютирует в следующей серии высококачественных видеокарт GeForce, которые, по слухам, дебютируют в конце этого года с номерами моделей 20XX. Как и другие проприетарные графические технологии, такие как PhysX от NVIDIA, он, вероятно, не будет доступен игрокам, использующим видеокарты других производителей..
При этом RTX также использует новую функцию системы DirectX API специально для трассировки лучей (так называемую трассировку лучей от Microsoft). Таким образом, хотя приведенные выше конкретные демонстрации представляют собой сотрудничество между Epic и NVIDIA, ничто не мешает конкурирующим производителям, таким как AMD и Intel, создавать аналогичные системы с похожими результатами..
Проще говоря, вы увидите, что высококлассные компьютерные игры начнут использовать эти приемы к концу 2018 и началу 2019 года. Геймеры, которые инвестируют в новые видеокарты примерно в то же время, получат наибольшую выгоду, но если у вас уже есть Высококлассная игровая система, вы можете использовать некоторые из этих эффектов в DirectX-совместимых играх на вашем текущем оборудовании..
Из-за продолжительного времени разработки и статических аппаратных целей, игроки не смогут увидеть эту продвинутую графику, пока через несколько лет не будет выпущен следующий раунд игровых приставок..
Изображение предоставлено: NVIDIA, Epic / YouTube, Guru3D / YouTube