Microsoft выпустила DirectX 12 Agility SDK с поддержкой Shader Model 6.9 и улучшениями трассировки лучей
Microsoft выпустила официальную версию DirectX 12 Agility SDK 1.619 и предварительную версию 1.719, которые включают новую версию Shader Model 6.9 (SM 6.9), а также два важных обновления для трассировки лучей DXR 1.2.
Agility SDK — это способ Microsoft доставлять новые функции DX12, не дожидаясь обновлений Windows. Игры могут напрямую включать новую среду выполнения, требуется лишь совместимое аппаратное обеспечение GPU и поддержка драйверов.
DX12 Agility SDK 1.619 включает новую модель SM 6.9, в которой основное внимание уделено обновлениям языка шейдеров и минимальным функциональным требованиям.
Ключевым нововведением SM 6.9 стали «длинные векторы» (Long Vector). Теперь шейдеры могут напрямую использовать векторы с количеством компонентов более 4, вплоть до 1024, без необходимости сложной упаковки.
Кроме того, некоторые функции, которые ранее были опциональными, стали обязательными для оборудования, поддерживающего SM 6.9, включая:
- Нативные 16-битные операции шейдеров
- Wave-операции (внутригрупповая коммуникация потоков)
- 64-битные целочисленные операции
Два важных обновления для трассировки лучей DXR 1.2:
1. Карты микропрозрачности (Opacity Micromaps)
Технология существовала и ранее, но теперь официально выпущена, и последняя часть интерфейсов HLSL также больше не помечена как предварительная. Обновление в основном оптимизирует геометрию с альфа-тестированием, такую как заборы, растительность, текстуры с прозрачностью. Обработка таких объектов при трассировке лучей обычно требует больших затрат и часто приводит к дорогостоящим ветвлениям в шейдерах.
2. Переупорядочивание выполнения шейдеров (Shader Execution Reordering — SER)
Также завершила этап предварительной версии и стала официальной. SER позволяет GPU перегруппировывать похожие задачи по трассировке лучей для более последовательного выполнения, повышая эффективность. В новой версии приложения могут запрашивать, действительно ли GPU выполняет переупорядочивание, а не только проверять поддержку на уровне API.
Поддержка уровней функций DX12 сильно различается в зависимости от GPU. Базовые функции SM 6.9, такие как длинные векторы и 16-битные числа с плавающей запятой, требуют: AMD RX 9000 серии, NVIDIA RTX серии, Intel Arc B серии.
Аппаратная поддержка карт микропрозрачности для трассировки лучей на данный момент есть только у видеокарт NVIDIA RTX серии. В RTX 50/40 сериях она реализована с аппаратным ускорением, а в RTX 30/20 сериях — через программную эмуляцию.
SER аппаратно поддерживается в NVIDIA RTX 50/40 сериях и Intel Arc B серии. Видеокарты AMD RX 9000 серии поддерживают функцию только на уровне API, фактически не выполняя переупорядочивания.
Кроме того, DX12 Agility SDK 1.719 включает предварительный просмотр нескольких новых функций:
1. Fence Barriers
Расширение для улучшенных барьеров, позволяющее командным буферам отправлять сигналы и ожидать семафоры внутри потока команд для более детальной синхронизации.
2. VPblit 3DLUT
Открывает аппаратный путь обработки видео для тональной коррекции и операций с 3D-таблицами поиска, позволяя вынести эту работу из основного 3D-движка.
3. Механизм D3D12 Extensions
Официальная плагинная схема, позволяющая производителям оборудования предоставлять экспериментальные функции до их включения в ядро D3D12.











0 комментариев