Найти в Дзене
Games4Linux

Microsoft обновила свой открытый компилятор шейдеров DirectX Shader Compiler (DXC)

История сближения DirectX и Vulkan получила очередное подтверждение. Компилятор DirectX Shader Compiler (DXC), который Microsoft открыла под лицензией с открытым исходным кодом ещё в 2017 году, продолжает эволюционировать в сторону большей интероперабельности с открытыми графическими стандартами. Февральский релиз 2026 года содержит важнейшие улучшения, которые порадуют не только разработчиков Windows-игр, но и всё сообщество Linux-гейминга. Основной фокус этого обновления — масштабная доработка бэкенда, генерирующего SPIR-V (промежуточное представление, используемое в Vulkan). Разработчики Microsoft проделали большую работу над: «Эти изменения улучшают интероперабельность с драйверами и инструментарием Vulkan, одновременно приводя поведение в более тесное соответствие с семантикой HLSL и DXIL», — отмечается в анонсе релиза. Релиз также знаменует собой переход поддержки Shader Model 6.9 из статуса экспериментальной в полноценную, готовую к использованию в production-среде. Это означает
Оглавление

История сближения DirectX и Vulkan получила очередное подтверждение. Компилятор DirectX Shader Compiler (DXC), который Microsoft открыла под лицензией с открытым исходным кодом ещё в 2017 году, продолжает эволюционировать в сторону большей интероперабельности с открытыми графическими стандартами. Февральский релиз 2026 года содержит важнейшие улучшения, которые порадуют не только разработчиков Windows-игр, но и всё сообщество Linux-гейминга.

Главное: SPIR-V бэкенд становится лучше

Основной фокус этого обновления — масштабная доработка бэкенда, генерирующего SPIR-V (промежуточное представление, используемое в Vulkan). Разработчики Microsoft проделали большую работу над:

  • Компоновкой (layout) и ABI-корректностью: Теперь генерируемый SPIR-V лучше соответствует ожиданиям драйверов и инструментов Vulkan.
  • Поддержкой системы типов: Расширена поддержка различных типов данных, что улучшает точность трансляции шейдеров.
  • Корректностью генерации кода: Исправлены ошибки, приводящие к некорректной работе шейдеров на некоторых GPU.
  • Отладкой (debug): Продолжающиеся улучшения в отладочной информации.

«Эти изменения улучшают интероперабельность с драйверами и инструментарием Vulkan, одновременно приводя поведение в более тесное соответствие с семантикой HLSL и DXIL», — отмечается в анонсе релиза.

Shader Model 6.9: готов к производству

Релиз также знаменует собой переход поддержки Shader Model 6.9 из статуса экспериментальной в полноценную, готовую к использованию в production-среде. Это означает, что разработчики игр и движков могут смело использовать новые возможности последней версии шейдерной модели, зная, что компилятор обеспечит стабильную и корректную работу.

Контекст: почему это важно?

Напомним, что в 2024 году Microsoft приняла судьбоносное решение: грядущая спецификация Shader Model 7 будет использовать SPIR-V в качестве основного промежуточного представления вместо проприетарного DXIL. Это решение должно кардинально упростить переносимость шейдеров между DirectX 12 и Vulkan, снизив нагрузку на разработчиков игр и создателей драйверов.

Текущее обновление DXC закладывает фундамент для этого будущего. Чем лучше компилятор будет генерировать SPIR-V из HLSL сегодня, тем плавнее пройдёт переход на Shader Model 7 завтра.

Что ещё вошло в релиз?

  • Стабильность и надёжность: Множество исправлений в путях HLSL, DXIL и SPIR-V, повышающих общую стабильность процесса компиляции шейдеров и снижающих вероятность сбоев.
  • Поддержка Linux и кросс-платформенность: Хотя прямо в анонсе это не указано, проект DXC давно поддерживает сборку под Linux, и улучшения SPIR-V бэкенда автоматически идут на пользу разработчикам на этой платформе.

Для кого это обновление?

  • Разработчики игр на Windows: Получают стабильный инструмент для Shader Model 6.9 и возможность готовиться к будущему с Shader Model 7.
  • Разработчики кросс-платформенных движков: Улучшенная генерация SPIR-V упрощает создание единого пайплайна шейдеров для DirectX 12 и Vulkan.
  • Сообщество Linux-гейминга: Косвенно выигрывает от того, что через трансляционные слои (VKD3D-Proton) будут проходить более качественные и предсказуемые шейдеры, что ведёт к стабильности и производительности игр.

Исходный код и бинарные сборки новой версии компилятора доступны на GitHub-странице проекта.