Microsoft анонсировала API трассировки лучей для DirectX 12" - Финансовый гений

Microsoft анонсировала API трассировки лучей для DirectX 12"

Microsoft с партнёрами, как и ожидалось, сделала важный анонс в рамках мероприятия NVIDIA GDC 2018 — в графическом API DirectX 12 появится новая функциональность в лице DirectX Raytracing (DXR). Речь идёт о стандарте программной и, что куда интереснее, аппаратной трассировки лучей (ray tracing) в рамках DirectX.

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

Microsoft анонсировала API трассировки лучей для DirectX 12"

Что такое DirectX Raytracing (DXR)? На самом высоком уровне речь идёт о четырёх новых концепциях API DirectX 12:

  • Структура ускорения (acceleration structure) — объект, представляющий полную 3D-среду в формате, оптимальном для обработки графическим ускорителем. Представленная в качестве двухуровневой иерархии, структура обеспечивает как оптимизированное отслеживания лучей с помощью GPU, так и эффективную модификацию динамических объектов со стороны приложения.
  • Новый метод списка команд DispatchRays, который является отправной точкой для трассировки лучей в сцене. Именно с его помощью игра фактически передаёт рабочие нагрузки DXR на GPU.
  • Набор новых шейдерных типов HLSL, включая ray-generation, closest-hit, any-hit и miss. Они определяют, какими именно вычислениями затенения нагружает DXR ускоритель. Когда вызывается DispatchRays, запускается шейдер генерации лучей ray-generation. Используя новую внутреннюю функцию TraceRay в HLSL, этот шейдер отслеживается в сцене. В зависимости от того, куда луч направлен, в точке пересечения может быть вызван один из нескольких шейдеров hit или miss. Это позволяет игре назначать каждому объекту свой собственный набор шейдеров и текстур, что приводит к уникальному материалу.
  • Режим конвейера трассировки, совпадающий по духу с сегодняшними режимами графического или вычислительного конвейеров, подразумевает использование шейдеров трассировки лучей и прочие соответствующие вычислительные нагрузки.
  • Проект PICA PICA от команды EA SEED показывает, как трассировка лучей в реальном времени при помощи DXR может выглядеть в будущих играх

    DXR не требует наличия новой видеокарты — по словам Microsoft, рабочие нагрузки DXR могут возлагаться на любой из существующих движков DX12. Дело в том, что по своей сути DXR является нагрузкой вычислительного типа. По словам Microsoft, современные аппаратные графические ускорители становятся всё более универсальными, и в конечном итоге большинство блоков фиксированной функциональности будут заменены на универсальный HLSL-код.

    Microsoft вместо традиционного подхода, предусматривающего создание для режима трассировки лучей нового метода CreateRaytracingPipelineState, предпочла более общий и гибкий метод CreateStateObject. Он может использоваться как для активации конвейера трассировки, так и для графического, вычислительного или любого другого будущего конвейера GPU. Теоретически это означает, что разработчики смогут создавать свои DXR-рейтрейсеры, в той или иной степени смешанные с традиционной растеризацией, чтобы достигать приемлемых результатов с точки зрения качества и производительности.

    Любопытно, что опробовать DXR разработчики могут уже сейчас. Microsoft выпустила пакет экспериментальных SDK-инструментов с примерами кода. Для работы с ним требуется участие в программе Windows Insider и грядущий весенний пакет обновлений Windows 10 Redstone 4 (RS4). Полноценный же запуск API DXR запланирован на осень.

    Microsoft анонсировала API трассировки лучей для DirectX 12"

    Впрочем, судя по всему, пока единственной по-настоящему оптимизированной под DXR аппаратной архитектурой является NVIDIA Volta, которой пока нет на игровом рынке. AMD ещё работает над драйвером, который обеспечит поддержку технологии. Возможно, с выходом DXR на рынок использование анонсированного ещё на GDC 2014 низкоуровневого графического API DirectX 12 станет более широким.

    Стоит отметить, что некоторые известные компании и игровые студии, как отмечает Microsoft, уже около года знают о создании DXR и в той или иной степени работают над разработкой стандарта и внедрением его в свои графические движки. Среди прочих названы имена Epic Games, Electronic Arts и DICE, Unity, Remedy, 4A Games, Allegorithmic и Futuremark.

    Microsoft анонсировала API трассировки лучей для DirectX 12"


    Источник

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Related Post

    Interactive Gaming Ventures и Epic Games будут финансировать инди-игры на Unreal Engine 4"Interactive Gaming Ventures и Epic Games будут финансировать инди-игры на Unreal Engine 4"

    Инвестиционный фонд Interactive Gaming Ventures, основанный бывшим президентом и исполнительным директором Sony Computer Entertainment America Джеком Треттоном (Jack Tretton), объединился с компанией Epic Games для поддержки развития интересных независимых проектов,

    #CES | LG привезла на выставку целый набор OLED-4K-телевизоров#CES | LG привезла на выставку целый набор OLED-4K-телевизоров

    Несмотря на развивающуюся технологию квантовых точек, компания LG продолжает продвигать телевизоры с OLED-дисплеями. Для этого она привезла на выставку CES сразу несколько интересных новинок. Как сообщает ресурс TheVerge, на выставке

    «Первая космическая нация» вывела свой спутник на околоземную орбиту«Первая космическая нация» вывела свой спутник на околоземную орбиту

    На днях в рамках космической миссии снабжения Cygnus CRS OA-8E к Международной космической станции на орбиту Земли был выведен спутник «Асгардия-1». Если вы «асгардец», то можете отметить дату 12 ноября