Это был долгий путь, но Самуэль Питойсет из Valve теперь включил поддержку VK_EXT_shader_object по умолчанию в драйвере Mesa Radeon Vulkan «RADV» для предстоящего релиза Mesa 24.1.
EXT_shader_object был представлен год назад в ревизии Vulkan 1.3.246. VK_EXT_shader_object был разработан всеми основными производителями аппаратного и программного обеспечения и предоставляет новый тип шейдерного объекта для представления одной скомпилированной стадии шейдера. Эти шейдерные объекты Vulkan более гибкие, чем объекты конвейера Vulkan. Это одно из интересных расширений, которое было востребовано и использовано в реализации Zink OpenGL-on-Vulkan и других, хотя поддержка «ESO» аппаратными драйверами была долгим процессом.
Драйвер RADV в Mesa уже давно работает над поддержкой EXT_shader_object, и наконец сегодня в Mesa 24.1 она включена по умолчанию. Сэмюэль Питойсет (Samuel Pitoiset) внёс изменения, чтобы включить шейдерные объекты из коробки, а переменная окружения «RADV_DEBUG=noeso» теперь поддерживается как средство отключения поддержки для целей отладки/сравнения. Пиоисет написал в сегодняшнем коммите:
«Это было долгое и болезненное расширение, но наконец-то RADV поддерживает его на всех поддерживаемых поколениях. Оно передает VKCTS и GLCTS через Zink, но количество приложений, использующих ESO, в настоящее время очень ограничено.»
Mesa 24.1 станет очень интересным функциональным релизом для драйверов OpenGL/Vulkan с открытым исходным кодом и должна выйти в стабильном виде примерно в конце мая.