Похоже, что будущее обновление VKD3D-Proton, которое переводит Direct3D 12 в Vulkan для Proton, для игр Windows на Linux desktop и Steam Deck, будет использовать новое расширение, доступное в новом выпуске NVIDIA Vulkan Beta 525.47.07.
Из примечаний к выпуску нового драйвера NVIDIA:
- Эксперименты с видеодрайвером Vulkan:
- Внутренняя синхронизация изображения VkVideoSessionParametersKHR во время обновления параметров с помощью vkUpdateVideoSessionParametersKHR.
- Разрешить параметры изображения, такие как StdVideoH264PictureParameterSet, StdVideoH264SequenceParameterSet, StdVideoH265SequenceParameterSet, StdVideoH265PictureParameterSet и StdVideoH265VideoParameterSet для опциональной передачи в vkCmdBeginVideoCodingKHR() и/или vkCmdDecodeVideoKHR() в VkVideoSessionParametersUpdateInfoKHR в качестве встроенной структуры расширения.
- Исправления:
- Игнорирование VkPipelineColorBlendStateCreateInfo.pAttachments, когда все состояние является динамическим
- Исправление проблемы с созданием параметров изображения видеосессии, когда максимальный размер PPS/SPS/VPS установлен на 1
релиз open-gpu-kernel-modules: https://github.com/NVIDIA/open-gpu-kernel-modules/releases/tag/525.47.07
При изучении того, что делает это новое расширение, в документации говорится следующее:
При использовании библиотек конвейера в конвейерах трассировки лучей библиотека может быть связана с различными конвейерами инкрементным способом. Приложение может иметь стратегию, при которой конвейер трассировки лучей состоит из N библиотек, а затем дополняется путем создания нового конвейера с N + 1 библиотеками. Без этого расширения все групповые дескрипторы должны быть запрошены заново, поскольку групповой дескриптор привязан к конвейеру, а не к библиотеке. Это проблематично для приложений, которые стремятся разделить создание буферов записи и соединение конвейеров трассировки лучей.
Чтобы помочь в этом, данное расширение обеспечивает поддержку запроса групповых дескрипторов непосредственно из библиотек конвейера. Групповые дескрипторы, полученные из библиотеки, должны оставаться побитово идентичными в любом VkPipeline, который связан с этой библиотекой.
Благодаря этой возможности расширение также улучшает совместимость с DXR 1.1 AddToStateObject(), которая гарантирует, что возвращаемые групповые дескрипторы остаются побитово идентичными между родительским и дочерним трубопроводами. Кроме того, запрос групповых дескрипторов из объектов COLLECTION также поддерживается этим API.
Ключевым моментом является последний абзац, что позволяет более точно соответствовать DirectX Ray Tracing (DXR). Совсем недавно VKD3D-Proton также добавил поддержку этой функции. Похоже, что поддержка этого расширения еще не реализована в драйверах Mesa для Intel и AMD.
Полный список изменений: https://developer.nvidia.com/vulkan-driver
Источник новости: https://www.gamingonlinux.com/