Nintendo migliora le API Vulkan
Redattore per Q-Gin. Clicca su '// TUTTI_GLI_ARTICOLI' per esplorare le altre pubblicazioni scritte da // Luca_Pio.
Nintendo migliora le API Vulkan
Questa è una notizia piuttosto inaspettata. Come spesso accade, è stato rilasciato un nuovo aggiornamento delle specifiche di Vulkan, accompagnato dall’introduzione di una nuova estensione che riguarda gli shader e alla quale Nintendo ha contribuito.
La notizia è stata menzionata in un post sul blog dello sviluppatore di driver Mike Blumenkrantz, nonché in un annuncio completo di Khronos Group, ossia, il consorzio che supervisiona lo sviluppo di Vulkan. Comunque, l’annuncio ufficiale è stato persino scritto da uno sviluppatore di Nintendo. Ecco le note dell’annuncio:
Oggi, Khronos sta rilasciando una nuova estensione multi-vendor di Vulkan che mira a semplificare radicalmente la specificazione e lo stato degli shader da parte delle applicazioni, mantenendo allo stesso tempo l’etica di Vulkan di essere un’API ad alte prestazioni “senza segreti”.
Questa estensione si chiama VK_EXT_shader_object e introduce un nuovo tipo di oggetto, VkShaderEXT, che rappresenta una singola fase di shader compilato, insieme a 4 nuove funzioni per manipolare e utilizzare gli oggetti VkShaderEXT.
Questi oggetti shader svolgono un ruolo simile alle pipeline, ma espongono un’interfaccia più semplice e flessibile, progettata per consentire alle applicazioni le cui architetture e/o esigenze di “dynamism” potrebbero aver reso l’uso delle pipeline difficile. In ambienti in cui è supportata VK_EXT_shader_object, le applicazioni possono scegliere di utilizzare solo pipeline, solo oggetti shader o una miscela arbitraria dei due.
Daniel Story

Per di più, il post di Blumenkrantz approdondisce ulteriormente le funzionalità di questa estensione e descrive come essa rappresenti la “culminazione di anni di lavoro per portare agli sviluppatori di Vulkan modalità sempre più potenti e facili da usare per gestire gli shader”. Stando al post dello sviluppatore:
Si tratta di un’estensione molto interessante per Zink. In pratica, significa che le varianti degli shader (non ottimizzati) possono essere generate molto rapidamente. Talmente rapidamente che l’estensione dovrebbe risolvere tutti i problemi rimanenti con la compilazione degli shader e lo stuttering, consentendo alle applicazioni (come Zink) di creare e collegare gli shader direttamente, senza la necessità di oggetti pipeline.
Mike Blumenkrantz
Sembra che l’estensione VK_EXT_shader_object rappresenti un grande passo in avanti e potrebbe portare a elevati guadagni di performance e a meno stuttering. Infatti, esortiamo tutti gli sviluppatori che in passato hanno bistrattato Vulkan a dargli una seconda possibilità.

Ricevi le notizie di Q-Gin direttamente tra le tue fonti preferite