В мире компьютерных игр в 2018 году произошло событие, которое многие эксперты отнесли к разряду революционных. Речь идет о внедрении в игры трассировки лучей.
По сути, это симуляция модели человеческого зрения, которая вплотную приближает компьютерную графику к кинематографическому уровню (см. примеры).
Эта информация доступна также в формате видео:
Трассировка лучей в компьютерной 3D-графике используется давно. Однако, раньше высокая сложность расчетов и недостаточное быстродействие видеокарт не позволяли с нужной скоростью рендерить картинку в компьютерных играх. Вместо трассировки использовались более простые и значительно менее требовательные к видеокартам алгоритмы.
Кое-кто пророчествовал начало игрового использования трассировки не ранее 2025 года. Однако, уже в 2018 году в графические чипы карт Nvidia Turing были внедрены специальные аппаратные блоки, включающие так называемые тензорные и RT-ядра. Они оптимизированы под расчеты трассировки и значительно ускоряют их. Новшество получило название Nvidia RTX. Видеокарты с наличием таких аппаратных средств не сложно отличить по аббревиатуре «RTX» в их названии. Это, например:
Nvidia RTX положила начало использованию трассировки лучей в компьютерных играх. Компания Microsoft дополнила DirectX 12 расширением DXR (DirectX Raytracing), а разработчики игровых приложений тут же взяли его на вооружение.
Рендеринг отдельных элементов графики с использованием трассировки появился в играх Metro Exodus, Shadow of the Tomb Raider, Battlefield V, Control. Таких игр пока не много. Но это не на долго. В дальнейшем трассировка лучей в той или иной степени будет использоваться в большинстве компьютерных игр.
В апреле 2019 года Nvidia выпустила специальный драйвер, добавляющий поддержку DirectX Raytracing также и в некоторые видеокарты архитектур Pascal и Turing, не обладающие специальными аппаратными средствами. Для расчетов в них используются универсальные шейдерные блоки, поэтому в список поддерживаемых попали только достаточно быстрые для этого модели. В частности:
В остальных видеокартах поддержки трассировки нет. Nvidia решила не добавлять ее в более старые линейки своих графических ускорителей, включая флагман GTX 980 Ti, который, вероятно, мог бы справиться с задачей не хуже, чем GTX 1060.
О намерении внедрить поддержку real-time трассировки лучей в свои продукты заявили и представители AMD. В картах Radeon появление соответствующих аппаратных средств (аналога Nvidia RTX) ожидается ближе к 2021 году. На программном же уровне поддержка графическими ускорителями AMD трассировки возможна уже сейчас (через Pro Renderer и Radeon Rays). Однако, в игровых приложениях ее пока нет.
Но есть ли в этом смысл? Многочисленные тесты свидетельствуют, что именно аппаратная поддержка трассировки лучей является ключевым условием комфортной игры. Ну, по крайней мере, на современном этапе эволюции графических карт и соответствующего программного обеспечения.
Например, в игре Metro Exodus при разрешении экрана Full HD с максимальными настройками графики, но без трассировки лучей, GeForce GTX 1080 Ti обеспечивает быстродействие на уровне 77 кадров в секунду. RTX 2060 при аналогичных условиях выдает только 56 кадров в секунду. Преимущество первой видеокарты
Если же в настройках игры включить трассировку лучей, расстановка сил кардинально меняется. GTX 1080 Ti, не имеющая аппаратной поддержки, выдает всего 25-26 кадров в секунду, а RTX 2060, у которой такая поддержка есть, – 40. Здесь уже не абы какое преимущество второй видеокарты (
37%). И это при том, что RTX 2060 является самой «медленной» картой с наличием аппартных средств трассировки.
Сложить более полное представление о влиянии трассировки на игровое быстродействие помогут размещенные ниже графики.
Выводы же напрашиваются следующие:
В компьютерных играх трассировка лучей в режиме реального времени с приемлемым уровнем быстродействия возможна при условии ее аппаратной поддержки видеокартой.
Программная ее поддержка пока-что выглядит не более, чем средством демонстрации широким массам преимуществ новой технологии. За счет использования для трассировки только универсальных шейдерных блоков обеспечить плавный игровой процесс не способны даже самые быстрые современные видеокарты.
Что такое Nvidia RTX, как технология трассировки лучей меняет графику в играх и зачем покупать новую GeForce (коротко и с примерами)
Что такое Nvidia RTX?
Nvidia RTX — платформа, содержащая ряд полезных инструментов для разработчиков, которые открывают доступ к новому уровню компьютерной графики. Nvidia RTX доступна только для нового поколения видеокарт Nvidia GeForce RTX, построенного на архитектуре Turing. Основная особенность платформы — наличие возможности трассировки лучей в реальном времени (также называемой рейтресингом).
Что за трассировка лучей?
Трассировка лучей — функция, которая позволяет имитировать поведение света, создавая правдоподобное освещение. Сейчас в играх лучи двигаются не в реальном времени, из-за чего картинка, зачастую, хоть и выглядит красиво, но всё равно недостаточно реалистична — используемые сейчас технологии требовали бы огромное количество ресурсов для рейтресинга.
Это исправляет новая серия видеокарт Nvidia GeForce RTX, обладающая достаточной мощностью для расчёта пути лучей.
Как это работает?
Это побудило Nvidia внедрить дополнительные ядра в видеокарты GeForce RTX, которые возьмут на себя большую часть нагрузки, улучшая производительность. Они также снабжены искусственным интеллектом, задача которого — высчитывать возможные ошибки во время процесса трассировки, что поможет их избежать заранее. Это, как заявляют разработчики, также повысит скорость работы.
И как трассировка лучей влияет на качество?
Shadow of the Tomb Raider, релиз которой состоится 14 сентября этого года:
Battlefield 5, которая выйдет 19 октября:
Metro Exodus, чей выход намечен на 19 февраля 2019 года:
Control, дата выхода которой пока неизвестна:
Вместе с этим всем, Nvidia рассказала, какие ещё игры получат функцию трассировки лучей.
Как включить RTX?
А есть ли аналоги у AMD?
Технология, которая будет работать на API Vulkan, пока находится в разработке.
Трассировка лучей. Современные возможности видеокарт
Содержание
Содержание
Технология построения реалистичных сцен методом трассировки лучей (ray tracing) известна уже несколько десятков лет, но только пару последних лет она полноправно заявляет свои права в сфере компьютерных игр. Тем самым переставая быть инструментом, применяемым сугубо в профессиональной сфере, постепенно становясь ближе простому обывателю.
Виртуальные фотоны
Технологии в сфере графики обычно сложно объяснить и максимально доступно разложить по полочкам, но в случае с трассировкой лучей — все довольно просто. Сама идея построения картинки, можно сказать, взята из реальной жизни, а в ее основе лежат процессы из школьного курса физики. Суть идеи — просчет поведения луча света при преломлении и отражении от моделируемого объекта. При этом в расчет берутся, как интенсивность виртуального луча (его освещенность), так и его взаимодействие с другими объектами, другими виртуальными лучами и источниками света. В результате чего, пользователь на экране монитора наблюдает изображение, максимально приближенное к тому, что он привык видеть в реальной жизни.
По сути, в цифровую среду перенесена работа света из реального мира. Виртуальный фотон движется из исходной точки и по пути взаимодействует с объектом. В точке соприкосновения с моделью его дальнейшее движение определяется свойствами самого объекта. Световой луч может быть полностью поглощен темным объектом, или отражен его зеркальной поверхностью.
Технология трассировки лучей пытается максимально реалистично отобразить объекты и их взаимодействие со светом так же, как это происходит в реальном мире.
Такое сходство рейтрейсинга с процессами, происходящими в реальном мире, делает его довольно успешной техникой 3D-рендеринга. Даже в «кубических» играх наподобие Minecraft, картинка выглядит довольно реалистично, насколько это конечно возможно.
Основная проблема — такая насыщенная среда довольно сложно поддается моделированию. Воссоздание процессов работы света в реальном мире — очень сложный и требовательный к вычислительным ресурсам процесс. Для примера, при расчете одного кадра с разрешением Full HD потребуется одновременно просчитать 2073600 виртуальных лучей, каждый их которых, прежде чем сформирует один пиксель на экране, по пути следования будет взаимодействовать не с одним десятком своих «сородичей». При этом не стоит забывать, что речь идет о динамичной сцене, а не о статичной картинке, поэтому количество вычислений, при комфортном значении FPS, как правило, составляющих 50–60 FPS, возрастает в разы! Понимание этого процесса объясняет наличие огромных серверных ферм для рендеринга на киностудиях и студиях визуализации, профессионально занимающихся созданием контента высокого качества.
Главная идея при продвижении трассировки лучей в массы, заключалась в том, что для качественного скачка необходимо было разработать алгоритм, который по сильно зашумленной картинке, полученной в результате всего нескольких проходов (итераций) определял основные параметры создаваемого изображения. А именно: характеристики освещенности сцены, расположение теней и отражений объектов. И, исходя из имеющихся данных, дорисовывал ее до удобоваримого вида.
Это и было ключевым новшеством. Все остальное — уже давно известно визуализаторам. Существует огромнее количество различных программ и плагинов к ним, ориентированных на удаление методом аппроксимации посторонних шумов изображения. Главное в технологии — определение начальных параметров сцены.
Трассировка лучей в игровом контенте
Из-за проблематики, озвученной выше, рядовому геймеру предоставляется урезанная версия технологии, которая не потребует внушительных затрат, но позволит насладиться сочной картинкой, максимально приближенно передающей игру света и теней.
Чтобы сделать рейтрейсинг ближе к народу, производители контента вынуждены идти на определенные компромиссы. Ведь кроме увлекательного сюжета и удобного геймплея, у игры должна быть отменная визуализация, которая полностью погрузит геймера в игровой процесс. Это достигается определенными «уловками» в сфере создания отражений, теней и реалистичного распределения света по игровой сцене.
Отражения
В большинстве игр с трассировкой лучей в настоящее время используется комбинация традиционных методов освещения, обычно называемых растеризацией, и рейтрейсинга на определенных поверхностях, таких как отражения от водной глади и металлоконструкций.
Для создания отражений, помимо стандартных полигонов игровой сцены, определенным ее частям присваивается свойство материала, с необходимым коэффициентом отражения. Встречаясь с такой поверхностью, условный фотон либо отражается под тем же углом (зеркальные поверхности), либо преломляется под заданным углом (другие поверхности). Причем, при использовании рейтрейсинга на матовых поверхностях, отражение сильно зависит от близости объекта к ней. Т. е., чем объект дальше от поверхности, тем более размытым он кажется.
Это важное свойство, которое большинство даже не замечает в реальной жизни, а в игровом процессе такая детализация существенно повышает качество картинки и ее восприятие.
Battlefield V — яркий представитель такого игрового контента. Пользователь во всей красе наблюдает отражения войск и техники на воде, отражение местности на плоскостях пролетающих самолетов, отражение вспышек от взрывов на поверхностях игрового мира.
Создание эффектов тени всегда вызывало у разработчиков кучу сложностей и нестыковок. Есть тени, которые являются просто проекциями объектов. Как правило, они имеют четко очерченные края. Есть более проработанные варианты, так называемые мягкие тени. Они имеют определенную линию перехода, отделяющую тень от полутени, но, к сожалению, в реальной жизни это так не работает.
При создании теней методом рейтрейсинга, виртуальные лучи, исходящие из источника света, при встрече с объектами, сами создадут необходимые области затенения. При этом учитывается не только интенсивность источника света, но и световые излучения, продуцируемые другими объектами. В итоге — наиболее соответствующий реальным условиям результат.
Наиболее интересно реализовать динамику и реализм теней на данный момент удалось разработчикам компьютерной игры Shadow of the Tomb Raider.
Освещенность
Если, что называется «по-честному», просчитывать всю освещенность сцены, то необходимо учитывать абсолютно все световые лучи присутствующие в ней. А это очень и очень ресурсоемкая задача!
Поэтому для трассировки лучей в играх, во-первых, используется определенное количество источников света, а во-вторых, количество итераций рейтрейсинга тоже строго ограничено. Этот трюк позволяет сделать картинку живой и реалистичной, но в то же время не перегружает графическую подсистему ПК.
Пока еще в редких играх используется полная трассировка лучей для просчета глобального освещения всей сцены. Это самый дорогой в вычислительном отношении способ. Для эффективной работы он нуждается в самой мощной из доступных в данный момент видеокарт. А вот результат вполне может разочаровать, поскольку топовая видеокарта справится с такой задачей в разрешении Full HD, хотя ей вполне по силам без использования рейтрейсинга выводить на экраны изображение 4К. Metro Exodus — пожалуй, единственная игрушка, использующая трассировку лучей для построения всей сцены, хотя в некоторых моментах ее реализация оставляет желать лучшего.
Аппаратная часть
Наиболее удачливой в коммерческом использовании технологии оказалась компания NVIDIA. Ее серия графических адаптеров GeForce RTX — безоговорочный лидер в работе с виртуальными фотонами. Ведь она была специально разработана для решения задач по трассировке лучей.
Компания AMD на данном этапе сохраняет завидное олимпийское спокойствие. Однако это затишье не должно расслаблять конкурентов. Скорее всего, в самом ближайшем будущем, игроманам будет презентована специализированная линейка видеоадаптеров на базе архитектуры RDNA 2, презентованной ранее.
Краткие итоги
С появлением трассировки лучей в игровом сегменте, в первую очередь реализация отражений стала значительно правдивей для пользователя и существенно проще для производителя контента. Во-вторых — появились довольно правдоподобные алгоритмы рассеивания отражений. В-третьих, улучшилось освещение сцен. Как бы не ограничивались и аппроксимировались расчеты освещенности сцены, все же созданные по технологии рейтрейсинга они более правдоподобны и наиболее приближены к реалиям. К тому же, тени созданные по этой технологии «умеют» окрашиваться в зависимости от расположенных поблизости источников света.
Технология NVIDIA RTX™ — одно из самых важных достижений NVIDIA в компьютерной графике, которая положила начало новому поколению приложений, моделирующим мир с невероятной скоростью. Благодаря поддержке новых технологий ИИ, трассировки лучей и моделирования RTX представляет собой полноценную платформу, которая позволяет создавать невероятные проекты в 3D, фотореалистичные симуляции и впечатляющие визуальные эффекты быстрее, чем прежде.
КЛЮЧЕВЫЕ ТЕХНОЛОГИИ
Трассировка лучей
Технология RTX воплощает мечту о рендеринге кинематографического качества в реальном времени благодаря оптимизированным API для трассировки лучей, таким как NVIDIA OptiX™, Microsoft DXR и Vulkan. Теперь фотореалистичный рендеринг объектов и окружений в реальном времени в комбинации с физически точными тенями, отражениями и преломлениями позволяет художникам и дизайнерам создавать потрясающий контент быстрее, чем когда-либо раньше.
ИСКУССТВЕННЫЙ ИНТЕЛЛЕКТ
Технология NVIDIA RTX привносит возможности ИИ в визуальные вычисления и позволяет разрабатывать приложения на базе ИИ, которые ускоряют рабочий процесс. Эти возможности значительно ускоряют работу художников и дизайнеров, освобождая время и ресурсы за счет интеллектуальной обработки изображений, автоматизации повторяющихся задач и оптимизации процессов, требующих большого объема вычислений.
РАСТЕРИЗАЦИЯ
RTX поддерживает такие новые технологии программируемого шейдинга, как Variable-Rate Shading, Texture-Space Shading и Multi-View Rendering. Использование этих технологий позволяет создавать более насыщенные визуальные эффекты с гибкой интерактивностью, крупными моделями и сценами и улучшенными возможностями в VR.
МОДЕЛИРОВАНИЕ
Реалистичность визуальных эффектов достигается не только путем соответствия внешнего вида, но и поведения. Благодаря возможностям ядер CUDA®и таким API, как NVIDIA PhysX®, Flow, FleX и CUDA, технология RTX позволяет точно моделировать поведение реальных объектов во всем: от игр до виртуальных сред и спецэффектов
Трансформация рабочих процессов с NVIDIA Omniverse
NVIDIA Omniverse™ — это многоуровневая платформа, позволяющая приложениям сторонних производителей использовать возможности технологии RTX через подключение к порталам. Обеспечьте виртуальную совместную работу в реальном времени в интерактивной смоделированной среде и мгновенную фотореалистичную визуализацию для высококачественного рендеринга с трассировкой лучей и пути в один клик. Скачайте открытую бета-версию Omniverse и измените работу с графикой.
С самого первого своего публичного явления на Gamescom 2018 архитектура Nvidia Turing стала предметом всеобщего обсуждения. Этот метод рендеринга уже давно был недостижимой мечтой графических технологий и вот, наконец, видеокарты вроде Nvidia GeForce RTX 2080 научились с ним работать с приемлемой производительностью.
Трассировка лучей, пожалуй, самое значительное улучшение графики в игровом мире за последние годы. Во всяком случае, в ПК-гейминге.
Так что же такое рейтрейсинг (ray tracing)? Это продвинутый и очень реалистичный способ рендеринга света и теней, благодаря которому компьютерная графика в фильмах и сериалах выглядит столь правдоподобно. Но есть одно «но» (на самом деле, конечно же, не одно): поскольку трассировка работает посредством симуляции и отслеживания каждого луча света от источника, технология крайне требовательна к мощности железа. В этом кроется главная причина, по которой мы не видели настоящего рейтрейсинга в играх. До сих пор.
В наши дни трассировка уже доступна на ПК, хотя пока лишь самые крупные тайтлы рискуют пользоваться ей, и то в ограниченном виде, довольствуясь лишь реалистичными отражениями или тенями. Игр, созданных при полной поддержке ray tracing, еще не существует.
Самое время разобраться, что такое трассировка лучей, как она работает и что дает нашим играм. Учитывая тот факт, что технология новая и почти каждый день появляется какая-нибудь новая информация о ней, мы постараемся своевременно обновлять эту статью.
Что такое трассировка лучей?
Это метод рендеринга изображения, позволяющий создавать потрясающе реалистичные световые эффекты. По сути, алгоритм отслеживает путь каждого луча от источника и симулирует способ, с которым свет взаимодействует с каждым виртуальным объектом на своем пути.
В последние годы мы наблюдали, как внутриигровое освещение становится все более и более правдоподобным, но преимущества новой технологии касаются больше не самого света, а того, каким образом он применяется в игровом мире.
Благодаря трассировке мы с вами сможем увидеть гораздо более реалистичные тени и отражения, а также продвинутые эффекты просвечивания и рассеивания света. Алгоритм принимает во внимание то, каким образом лучи падают на объект, просчитывает их взаимодействие и выдает изображение, подобное тому, что увидел бы человеческий глаз в схожих условиях в реальном мире. При этом влияние на результат оказывает множество деталей, включая даже видимые в сцене цвета.
При наличии достаточной вычислительной мощности можно создавать невероятно реалистичные изображения, практически неотличимые от реальности. Проблема заключается лишь в том, что подобной производительностью на сегодняшний день могут похвастать лишь дорогие ПК и консоли нынешнего поколения, причем первые страдают от завышенных цен на видеокарты, а вторые все еще в огромном дефиците.
При создании визуальных эффектов для кинофильмов и сериалов трассировка лучей используется в несравнимо большей степени, и причина у этого все та же: для такой работы студии могут позволить себе целые серверные фермы. И даже в таком случае применение технологии остается длительным и кропотливым процессом, не говоря уже о заоблачной стоимости подобного оборудования.
В видеоиграх же традиционно применяется растеризация (или растрирование, если угодно), как гораздо более быстрый способ рендеринга. Это процесс превращения трехмерной графики в двухмерные пиксели на вашем экране, для отображения реалистичного освещения использующий программы-шейдеры. К счастью, появляется все больше игр с поддержкой специального железа от Nvidia, способного управиться с применением трассировки в реальном времени. Да, растрирование по-прежнему преобладает в игрострое, но это будет продолжаться до тех пор, пока разработчики, следуя за распространением RTX видеокарт, не станут внедрять в свои проекты освещение на основе рейтрейсинга.
И, если прямо сейчас мы с вами не наблюдаем чего-то крышесносящего, фундамент для появления действительно потрясающей картинки уже заложен. С учетом того факта, что в консолях нового поколения уже реализована поддержка трассировки, нас ждет революция в гейминге.
Игры с поддержкой трассировки лучей
Прямо сейчас достаточно много игр поддерживают технологию трассировки лучей, а скоро их станет еще больше: даже в инди-игры теперь добавляют эффекты реалистичного освещения. А пока вот список нынешних игр с поддержкой RTX на ПК:
В списке будущих хитов с поддержкой трассировки лучей в реальном времени находятся:
Видеокарты с поддержкой трассировки лучей
Трассировку лучей в реальном времени качественно поддерживают только видеокарты Nvidia. AMD заявила, что вплотную займется рейтрейсингом в будущем, а пока что эта технология работает на их видеокартах лишь номинально, превращая многие игры в слайдшоу.
Само собой получается, что для получения удовольствия от трассировки лучей вы должны быть обладателем как минимум Nvidia GeForce RTX 2060. Если же у вас найдутся дополнительные деньги на RTX 2080 Ti, то вы не будете разочарованы картинкой. Правда, эта видеокарта пробьет в вашем кошельке огромную дыру.
Ниже вы найдете список всех современных видеокарт, аппаратно поддерживающих рейтрейсинг. Спойлер: все они носят гордое «RTX» в названии.
Кроме того, трассировка лучей в реальном времени программно поддерживается на видеокартах поколения Pascal (GTX 10xx), начиная от GTX 1060 6 GB, но, ввиду отсутствия RT ядер включение RTX в настройках приведет к существенному падению производительности — вплоть до полной неиграбельности.
Консоли с поддержкой трассировки лучей
Платформы предыдущего поколения не были способны воспроизводить актуальные игры с трассировкой лучей в реальном времени. Однако современным консолям — PlayStation 5 и Xbox Series X|S — эта задача вполне по плечу. Но с некоторыми оговорками: эти консоли слабее топовых ПК, поэтому трассировка лучей реализуется частично, жертвуя некоторыми другими эффектами — например, максимальным разрешением изображения или частотой кадров.
В некоторых играх, таких как Metro Exodus Enchansed Edition, страдает дальность прорисовки, а консоль Xbox Series S и вовсе практически не способна выдавать комфортный fps с трассировкой лучей. С другой стороны, это оправдано для бюджетных (а консоли именно таковыми и являются в сравнении с компьютерами) игровых устройств.
Производительность
Даже не вдаваясь в цифры и графики становится видно, как эти завораживающие визуальные эффекты печальнейшим образом сказываются на производительности ПК. Частота смены кадров падает просто катастрофически.
К примеру, Metro Exodus, запущенная в разрешении 3440х1440 с «экстремальными» настройками графики, выдает на RTX 2080 Ti в среднем 41 кадр в секунду. Однако, стоит только включить трассировку лучей, как fps падает до среднего значения в 23 кадра. Разумеется, играть можно, но… вы понимаете.
К счастью, эта игра поддерживает технологию DLSS, использующую интеллектуальный апскейл разрешения. С ней вы сможете выжать из игры больше: к примеру, во время теста Metro Exodus с «экстремальной» графикой и «ультра» рейтрейсингом показала в среднем 44 кадра в секунду. Впрочем, это уже тема для отдельной статьи.
Следовательно, в погоне за трассировкой лучей вам придется быть более консервативным в выборе разрешения, ведь для более или менее комфортной игры в 4K вам определенно не обойтись без RTX 2080 Ti. Для привычного же 1080р с рейтрейсингом вполне будет достаточно RTX 2060.
Геймер со стажем. Люблю читать, спать и Бога-Императора.