iPon Hírek

Vulkan: az OpenGL és a glNext új neve

Dátum | 2015. 03. 03.
Szerző | J.o.k.e.r
Csoport | SZOFTVER

Az OpenCL és az OpenGL mögött álló Khronos Group több érdekes bejelentést is időzített erre a hétre, ami nem is túl meglepő, hiszen az MWC (Mobile World Congress) mellett ezen a héten rendezik meg a GDC-t (Game Developer's Conference) is, így minden vállalat ellövi majd az egyes alkalmazásprogramozási-interfészekhez kapcsolódó bejelentéseit.
A Khronos 2014 augusztusában rántotta le a leplet alacsonyszintű hardverelérést biztosító fejlesztéséről, amely a glNext nevet viseli, azaz az OpenGL következő generációját képviseli. Az új API a Mantle és a DirectX 12 alapkoncepcióját követve alacsonyszintű hozzáférést biztosít a grafikus alrendszerhez, de előbbieknél komolyabb jelentőséggel bír, hiszen a világ első alacsony szintű, platformok között működő API-jának minősül. A 2014-es bejelentés tulajdonképpen csak együttműködésre való felhívás volt, most azonban érdekes részletek is napvilágot láttak a glNext újításaival kapcsolatban.
Első és legfontosabb, hogy a glNext-et végre elnevezték, így mostantól a Vulkan névre hallgat. Az új név nagyon komoly változásokat takar, ugyanis e név alatt egyesül az asztali OpenGL API és a mobil OpenGL ES API. A korábban felvázolt irány persze az új név bevezetése után sem változik: továbbra is egy nyílt, platformok között működő, alacsony szintű hardverelérést biztosító API készítése a cél, amely számos előnyt kínál (hála például a jelentősen csökkentett draw call overhead-nek, vagy a gyorsabb shader fordításnak).
A Vulkan érkezésével fejlődésre lehet számítani fejlesztőeszközök terén is, aminek ideje volt, mert e téren az OpenGL korábban több jogos kritikát is kapott. A Vulkan esetében egységes validációs és hibakereső rétegek állnak rendelkezésre, amelyek beilleszthetőek a renderelési láncba és használhatóak a fejlesztés során, ez pedig nagy könnyebbséget jelent a fejlesztők számára. A megfelelőségi tesztek szintén nagy hangsúlyt kapnak, amelyek az OpenGL esetében évekig hiányoztak és amelyek nagy segítséget jelentettek a Khronos legfrissebb API-jainak fejlesztésében – itt gondoljunk például a WebCL-re. A megfelelőségi tesztelés részben nyitott lesz, ugyanis a fejlesztők benyújthatnak majd új teszteket, amelyeket a Khronos szakembergárdája el fog bírálni.
A végleges Vulkan specifikáció egyelőre még nem áll rendelkezésre, de a Khronos szerint nagyon hasonlít majd a Mantle API-ra és a DirectX 12-re, így azok a fejlesztők, akik ezeken az API-kon dolgoznak, a Vulkan API-val is elboldogulnak majd.
Érdekes tény, hogy a Vulkan fejlesztésében komoly szerepe van az AMD Mantle API 1.0-s kiadásának, hiszen gyakorlatilag erre alapoz a Vulkan. Persze fontos megjegyezni, hogy a Vulkan nem egyenlő a Mantle API-val, mindössze a Vulkan fejlesztésének felgyorsítását szolgálta, így a Vulkan több téren is különbözik tőle. A Mantle leszármazottjának tekinthető Vulkan esetében számos olyan Mantle szolgáltatást száműztek, amelyek nem feleltek meg a céloknak – itt részben a HLSL-re, illetve minden egyéb olyan megoldásra kell gondolni, amelyek akadályozták, hogy az új API klönböző gyártók termékeivel is együttműködjön –, a kivett funkcionalitást pedig egyéb szükséges összetevőkkel, illetve jobb funkcionalitással pótolták.
Shader programozás felől nézve a Vulkan elég széles repertoárból gazdálkodhat majd a későbbiekben. Eleinte a GLSL lesz a Vulkan fő shader programozási nyelve, de hosszabb távon egyéb programozási nyelvek támogatására is lehet számítani, például a C++-éra is, amit az Apple Metal API-ja egyébként már támogat. Hardveres támogatás terén a Khronos jelenlegi álláspontja szerint minden olyan platform megfelel majd, amely rendelkezik OpenGl ES 3.1-es vagy frissebb támogatással, azaz minden modern mobil és asztali GPU kompatibilis lesz a Vulkan API-val.
A Vulkan API specifikációja még ebben az évben megjelenhet, ám abból kiindulva, hogy a Khronos elsőként mindig ideiglenes specifikációt ad ki, a végleges változat egy picit késhet a DirectX 12-höz képest, ami még év vége előtt elrajtol. Az előzetes specifikáció megjelenésekor már pontosabb képet kaphatunk azzal kapcsolatban, hogy mely platformok és GPU-k kapnak Vulkan támogatást, valamint az is kiderülhet, mely játékok támaszkodnak elsőként az új API-ra. Itt a SPIR-V is A Khronos a Vulkan mellett a SPIR legújabb változatát, a SPIR-V-t is bejelentette. A SPIR egy speciális fordító, amely egy köztes állapotot biztosít a shader forráskódja és a lefordított bináris között. Ez a módszer garantálja, hogy a szabványos shader kód gond nélkül lefut majd az adott, Vulkan API-t támogató hardvereken – ez pedig komoly előrelépés az OpenGL-hez képest.
Azáltal, hogy a Vulkan a SPIR-V köré épül, a fejlesztők több programozási nyelven is készíthetnek tartalmakat a Vulkan API-ra, így gyakorlatilag bármilyen kód lefuttatható a Vulkan API-n, ha azt le lehet fordítani SPIR szintre. Ez a gyakorlat hasonló ahhoz, amit a Khronos csoport az OpenCL esetében folytat – a SPIR ugye pont az OpenCL miatt született meg.
A fentiek miatt a Vulkan shaderek esetében már nem kötelező nyers magas szintű GLSL kódot használni, ehelyett az említett köztes állapotban is leszállítható a kód. Hosszabb távon a SPIR-V jóvoltából a fejlesztők szabadon keverhetik majd a grafikai és számítási terhelésfajtákat, hiszen a SPIR-V mindkettőt ki tudja szolgálni. Ezzel együtt a Vulkan rugalmasabb is lesz, hiszen nem csak a GLSL programozási nyelvet támogathatja, hanem egyéb programozási nyelveket is, hála a SPIR-V bevetésének.
Új hozzászólás írásához előbb jelentkezz be!

Eddigi hozzászólások

21. atti2010
2015.03.03. 19:07
Mondtam én gyerekek jön a Mantle API mindenbe beépülve, nem akarják egyesek megérteni, hülyék lennének a gyártók nem kihasználni az egységes konzolra irt szoftvert és a zseniális Mantle előnyeit.
 
Válasz írásához előbb jelentkezz be!
20. v_peter atti2...
2015.03.03. 19:32
"Persze fontos megjegyezni, hogy a Vulkan nem egyenlő a Mantle API-val, mindössze a Vulkan fejlesztésének felgyorsítását szolgálta, így a Vulkan több téren is különbözik tőle. A Mantle leszármazottjának tekinthető Vulkan esetében számos olyan Mantle szolgáltatást száműztek, amelyek nem feleltek meg a céloknak – itt részben a HLSL-re, illetve minden egyéb olyan megoldásra kell gondolni, amelyek akadályozták, hogy az új API klönböző gyártók termékeivel is együttműködjön –, a kivett funkcionalitást pedig egyéb szükséges összetevőkkel, illetve jobb funkcionalitással pótolták."
 
Válasz írásához előbb jelentkezz be!
19. v_peter atti2...
2015.03.03. 19:35
Ezt már úgy hívják Nvidia Vulkan.
Ennyit lehet köszönni az AMD-nek, hogy ezzel sem bírt semmit kezdeni. Innentől mindenkié, az nvidia, az intel, az AMD meg megy a levesbe.
 
Válasz írásához előbb jelentkezz be!
2015.03.03. 19:49
Ennyi! Ez a lényeg...
 
Válasz írásához előbb jelentkezz be!
17. atti2010 v_pet...
2015.03.03. 20:10
Mindegy hogy hívják, nem az Nvidia fejlesztette de a Mantle -ra épül és GCN -t támogat meg ha nem is írták ki.
 
Válasz írásához előbb jelentkezz be!
2015.03.03. 20:29
Már a neve is egy köszönet nyilvánítás az AMD felé...
 
Válasz írásához előbb jelentkezz be!
2015.03.03. 20:39
Ott kezdodik az egesz hogy: valakinek keszitenie kellett egy uj apit, amire csak az amd mondott igent, es ez logikus hogy elsonek a sajat termekukon lehetett hasznalni. Foleg hogy nem igazan szokta a zold a pirosak cuccait hasznalni mert az neki nem jo"" (freesync).

Na de nekem ezzel nincs problemam hogy tovabb fejlesztettek amit a pirosak elkezdtek. Az egesz Mantle-nek a lenyege az volt hogy mikrofos kezdjen valamit a directx-el, + a opengl keszitoi, es sikerrel jartak mivel lattak mekkora teljesitmeny novekedest kapott egy "-be amator API.
 
Válasz írásához előbb jelentkezz be!
14. kiskoller atti2...
2015.03.03. 21:12
Te butuska, a Mantle egyetlen előnye, nem, nem csak az előnye, a LÉNYEGE, hogy fix hardverre lett megírva. Ha Mantle elkezdene más hardvert támogatni, megszűnne annak lenni, aminek készült. Hardverspecifikus API-nak.
 
Válasz írásához előbb jelentkezz be!
13. RealDreamQ
2015.03.03. 22:01
Hmmm - másképp nevezik el - és máris egész másképp cseng . de a lényegi az megvan ... majd lehet kapkodni fejeket . Azért nem hülyék ám - tanultak eleget már ...
[Irányt vált az AMD Mantle API-ja]

Hogy mennyi nagytudós lett itt hamarjában - jézus Nem érteni , akkor miért nem egy szoftverfejlesztő cégnél vagytok ??? okoskák
de még visszavan a nagyrésze , mi lessz itt megint

~200 hsz
 
Válasz írásához előbb jelentkezz be!
12. atti2010 kisko...
2015.03.03. 22:16
Kollerkém annyi, ezt a fordulót nem a zöldek nyerték.
 
Válasz írásához előbb jelentkezz be!
11. siriq
2015.03.03. 22:43
Hagyatok beket atti-nak. Ugy sem erti.
En speciel udvozlom a vulcan-t. Egy ertelmes dolog lehet belole. A sok gcn specifikus dolgot teljesen ki kell gyomlalni belole, majd szepen tovabb fejleszteni az intellel es nvidiaval egyutt.
 
Válasz írásához előbb jelentkezz be!
10. atti2010 siriq
2015.03.03. 23:06
A jelenlegi információk szerint a gyártók nagyon érdeklődnek a Vulkan API iránt. Az AMD nyilván adott volt, de az NVIDIA, az ARM, az Imagination és a Vivante is bejelentette már a készülő támogatást. Mindemellett számos professzionális szoftvereket fejlesztő cég is közölte, hogy Vulkan API-ra váltanak az OpenGL-ről.

Teljesen el vagy tévedve, ezen sem az Intel sem az Nvidia nem fog fejleszteni semmit!!!
 
Válasz írásához előbb jelentkezz be!
2015.03.03. 23:16
Majd meglatod Legyen ennyi most. Ehez mit szolsz mert nem irtal semmit a masikban hozza: http://postimg.org/image/aal82dnf9/
 
Válasz írásához előbb jelentkezz be!
8. pdx06
2015.03.04. 00:19
Remélem az új API-k tömkelege nem hoz kompatibilitási problémákat a régebbi játékokkal szemben. Mert egy DirectX 7-es játék már nehezen hajlandó elindulni egy újabb kártyával. Pedig úgy játszottam volna nemrég egy King Of The Road-al vagy egy Colin McRae 2-vel. Mert a végén az sül ki belőle hogy majd egy Far Cry 3 se fog elindulni lassan.
 
Válasz írásához előbb jelentkezz be!
7. BReal siriq
2015.03.04. 00:30
Mit kéne ehhez írni? 100e vs 180e Ft-os kártya? LoL
 
Válasz írásához előbb jelentkezz be!
6. Galdech
2015.03.04. 07:10
Úgy döntöttem, hogy hátradőlök és élvezem a hozzászólásokat. Annyira, de annyira vakon vagytok ebben a témában, nagyon jól szórakozom Pedig csak egy kis következtetés és logikus gondolkodás kellene.

Kíváncsi vagyok, hogy a most támogatott Mantle játékok mikor kapnak Vulkan támogatást, ha kapnak egyáltalán.
 
Válasz írásához előbb jelentkezz be!
5. sphynxx
2015.03.04. 07:18
Valahol már láttam én ezt a logo design-t
 
Válasz írásához előbb jelentkezz be!
4. kiskoller atti2...
2015.03.04. 09:29
Az a baj, hogy mindent nv vs amd szemmel nézel. Engem egyáltalán nem izgat ez, csak javítottam a hsz-edet.
 
Válasz írásához előbb jelentkezz be!
3. kiskoller pdx06
2015.03.04. 09:30
Ha nem idegen tőled a Linux, wine-al tehetsz egy próbát. Jobb a régi win-es játékok támogatottsága, mint Win7-Win8 párnak
 
Válasz írásához előbb jelentkezz be!
2. Solt
2015.03.04. 09:48
Van itt homály a fejekben Urak! Legalább nézetek utána a dolgoknak mielőtt nekiálltok okoskodni...
 
Válasz írásához előbb jelentkezz be!
1. atix2
2015.03.04. 10:24
Megy a marakodás, mint az Apple és Samsung közt Én csak annyit tennék hozzá, ha nem az AMD, lehet ma sem látnánk még API-t. De fikázni a legkönnyebb, igazatok van...
 
Válasz írásához előbb jelentkezz be!