A W3C egy ideje már javában dolgozik a web úgymond továbbfejlesztésén, hogy valós, komplex grafikával rendelkező alkalmazások legyenek futtathatók egy weboldalon keresztül, direkten a böngészőkben. Ehhez már készülnek a szükséges szabványok, például a WebAssembly, a WebCodecs, illetve a WebGPU is.
Hirdetés
Ami tipikus problémát jelent az a grafikán belül is a shader nyelv helyzete, ugyanis ezt a WebGL sem kezelte igazán jól. Utóbbi gyakorlatilag a magas szintű GLSL nyelvvel volt kompatibilis, ami ugyan működött, de a hardver kezelése szempontjából nem ideális a magas szintű kódot szállítani. Ez ugyanis sok kompatibilitási probléma alapja lehet, amiket nagyon nehéz javítani, viszont jobb lehetőség nem volt, tehát együtt kellett élni a helyzettel.
A WebGPU esetében már erre is születhet megoldás, ugyanis a W3C bejelentette, hogy felvetették az új generációs webes grafikai szabvány shader nyelvének kérdését, és a Khronos Group szerint ez akár a SPIR-V is lehet.
A SPIR-V nem egy magas szintű nyelv, hanem inkább egy reprezentációs szint, amire magas szintű shader nyelvben írt programokat lehet fordítani. A fő előnye, hogy nyílt specifikációról van szó, tehát nem ütközhet problémákba az elterjesztése, illetve köztes nyelvről lévén szó a kompatibilitás problémáját is igen jól kezeli, hiszen nagyon egyértelmű a működése, és a mai hardverekhez már eleve van megfelelő fordító hozzá.
Amennyiben a SPIR-V, vagy ennek legalább egy speciálisan webre kialakított verziója lesz kiválasztva, akkor azt számos magas szintű shader nyelvről lehet célozni, például a már megszellőztetett WHLSL-lel, vagy a manapság elterjedt HLSL és GLSL opciókkal. A weboldalra végeredményben egy reprezentációs kód kerülne fel, amiből még a forráskódot sem ismerhetné meg az alkalmazást futtató felhasználó, vagyis ennek a védelme is megoldott lenne.
Ez a koncepció egyébként még mindig egy hosszabb távú célkitűzés, tehát egyhamar nem lesz kész, de láthatóan zajlik a munka a komplex alkalmazások weben történő futtathatósága érdekében.