Kuukausi sitten esiteltiin Vulkan 1.3.246:ssa uusi VK_EXT_shader_object-laajennus, jota kehittivät Activisionista Valveen. Zink-johtava kehittäjä Mike Blumenkrantz Valvelta on ollut kiireinen viime viikkoina saadakseen tämän Shader-objektin tuen kytkemään tämän OpenGL-on-Vulkan-ohjaimen käyttöön.
VK_EXT_shader_object lisää uuden varjostusobjektityypin edustamaan yhtä käännettyä varjostusvaihetta. Vulkan Shader-objektit on tarkoitettu joustavammaksi, mutta verrattain tehokkaaksi vaihtoehdoksi liukuhihnaobjekteille.
Aiemmin tällä viikolla Blumenkrantz sai koodinsa ensimmäisen osan käytettäväksi varjostusobjekteista Zinkissä. Yhdistämiskoodilla hän huomautti:
“tämä toteuttaa uudelleen ja käyttää EXT_shader_object-parametria erillisissä varjostimissa
…mutta vain Tomb Raiderissa (2013), koska palautesilmukat ovat muuten katkenneet
…ja myös nvidia-omistus kaatuu, kun tätä yritetään, koska heillä on vaikka kuinka paljon bugeja
joten tämä todella toteuttaa jotain, jota kukaan ei voi käyttää, mutta jos he käyttäisivät sitä EXT_shader_objectin referenssitoteutuksessa, joka todella toimi (eli lavapipe), se toimisi hyvin.”
Yhdistettiin yhdessä yössä Zinkin EXT-shader_objectin toinen osa toteutus:
“tämä mahdollistaa EXT_shader_objectin käytön kaikissa erillisissä shader-esikäännöksissä
ihannetapauksessa, kun ajurit saavat kiinni, tämä tarkoittaa, että Tomb Raideria (2013) voi (vihdoinkin) pelata ilman häiriöitä.”
Mesa 23.2-develin julkaisu tänään on myös viimeinen osa kolme:
“tämä on viimeinen osa, joka mahdollistaa Shader-objektien käytön kaikissa esikäännöksissä, kun mahdollista/saatavilla
…
tämän pitäisi vastata GPL:n toimintoja, mutta sillä pitäisi olla (teoreettisesti) myös huomattavasti vähemmän suorittimen ylikuormitusta, joten olen ottanut tämän käyttöön uudeksi oletukseksi, kun se on saatavillatällä hetkellä en muuta mitään Shader-objektin käyttöönoton vaatimuksia, joten tämä on luultavasti vain käyttökelpoinen pöytätietokoneilla”
Tämän pitäisi puolestaan auttaa tarjoamaan sujuvan pelikokemuksen OpenGL-peleissä, kuten Tomb Raider, joka toimii Zinkillä.
Tehtävälistallani on suorittaa tuoreet Zink-testit pian ainakin Intel Arc Graphics-ja AMD Radeon-laitteistoille niiden avoimen lähdekoodin Linux-ajureineen.