Khronos Group, organizzazione responsabile dello sviluppo di standard grafici come OpenGL, ha rilasciato la versione 1.2 della libreria grafica Vulkan. Tra i suoi principali vantaggi v’è il fatto di essere cross-platform: gran parte degli sforzi di Khronos sono stati infatti rivolti sullo sviluppo di driver compatibili con tutti i sistemi operativi, incluso macOS.
Diversi titoli già implementano Vulkan e altri si porranno sulla stessa scia nel corso dei mesi a venire. Nonostante si tratti di un’API a basso livello e multipiattaforma, la cui distribuzione è iniziata a febbraio 2016 (questo l’articolo che pubblicammo all’epoca: Cos’è Vulkan, quali sono le differenze con DirectX), l’adozione di Vulkan è stata però notevolmente inferiore a quella di DirectX 12 non riuscendo a diffondersi almeno fino allo scorso anno.
La ridotta adozione da parte degli sviluppatori è dovuta, almeno in parte, ai problemi iniziali che adesso vengono gestiti da Khronos con l’aggiunta di ben 23 estensioni, utili per facilitare il lavoro degli sviluppatori. Ecco quindi che Vulkan 1.2 integra nuove chiamate API per la gestione delle risorse, tipi di dati per interagire con gli shader, riferimenti ai buffer e altro ancora.
All’orizzonte c’è la futura inclusione di nuove estensioni come quelle relative all’apprendimento automatico, al ray-tracing in tempo reale, a nuovi metodi di codifica/decodifica video, di gestione delle ombre.
In ambiente Linux, la libreria Vulkan 1.2 getta nuovi ponti verso DirectX supportando il linguaggio Microsoft HLSL e permettendo l’emulazione delle librerie DirectX 10 e 11. Inutile dire che in questo modo si registrerà una certa perdita prestazionale ma, lavorando sulle ottimizzazioni, i programmatori potranno ridurre drasticamente i tempi di sviluppo sulle diverse piattaforme.