När vi närmar oss augusti når den tekniska konferenssäsongen för grafik äntligen sin höjdpunkt. NVIDIA och AMD höll sina evenemang i maj respektive juni, och den här veckan samlas de två tillsammans med de andra stora spelarna inom GPU-utrymmet för grafikbranschens tältevenemang: SIGGRAPH 2012.
Utanför enskilda leverantörsevenemang är SIGGRAPH vanligtvis den största platsen för ny teknik och standardmeddelanden. Och även om det egentligen inte är en spelkonferens – showen handlar om professionell användning i båda bemärkelserna – ett antal av dessa meddelanden slutar med att vara spelrelaterade. Sammantaget kommer vi att se ett antal tillkännagivanden den här veckan, och Khronos Group kommer att börja.
Khronos Group är industrikonsortiet som ansvarar för OpenGL, OpenCL, WebGL och andra öppna grafik-/multimediastandarder och API:er. Khronos-medlemskap i sin tur är en vem är vem av teknik, och inkluderar praktiskt taget alla större GPU-leverantörer, både stationära och mobila. Liksom andra industrikonsortier väljs gruppens president från ett medlemsföretag, där NVIDIAs Neil Trevett för närvarande innehar presidentskapet i Khronos.
OpenGL ES 3.0-specifikation släppt
Khronos första SIGGRAPH 2012-meddelande – och definitivt det största – är att OpenGL ES 3.0 äntligen har ratificerats och specifikationen släppts. Som det primära grafik-API för de flesta mobila/inbäddade enheter, inklusive både iOS och Android, är Khronos arbete med OpenGL ES i sin tur den primära kanalen för utveckling av mobil grafikteknologi. Khronos och dess medlemmar har arbetat på OpenGL ES 3.0 (kodnamn: Halti) ett tag nu, och medan de snåla detaljerna i specifikationen äntligen har hamrats ut, har den första OpenGL 3.0 ES-hårdvaran för länge sedan tappats ut och är nära frigivning.
OpenGL ES 3.0 följer i hälarna på OpenGL ES 2.0, Khronos sista OpenGL ES API som släpptes för över 5 år sedan. Liksom tidigare iterationer av OpenGL ES är 3.0 avsedd att fortsätta konvergensen av mobil- och datorgrafikteknologier och API:er där det är vettigt att göra det. Som sådan, där OpenGL ES 2.0 var ett försök att ta med en lämplig delmängd av OpenGL 2.x-funktionalitet till mobila enheter, kommer OpenGL ES 3.0 att injicera ett urval av OpenGL 3.x- och 4.x-funktioner i OpenGL ES API.
Till skillnad från övergången från OpenGL ES 1.x till 2.0 (som såg att hårdvaran flyttade från fast funktion till programmerbar hårdvara) kommer OpenGL ES 3.0 att vara helt bakåtkompatibel med OpenGL ES 2.0, vilket kommer att göra detta till en mycket mer enkel iteration för utvecklare , och med lite tur kommer vi att se en mycket snabbare handläggningstid på ny programvara som drar fördel av den extra funktionaliteten. Vid sidan av en enklare iteration av API:et för utvecklare är hårdvarutillverkare mycket mer synkroniserade med Khronos den här gången. Så till skillnad från OpenGL ES 2.0, som såg den första massmarknadshårdvaran nästan två år senare, kommer OpenGL ES 3.0-hårdvara att vara klar 2013. Desktopstöd för OpenGL ES 3.0 är också mycket längre framme, och även om vi kommer till skrivbordet När vi talar om OpenGL 4.3 är det värt att notera att OpenGL 4.3 kommer att erbjuda full OpenGL ES 3.0-kompatibilitet, vilket gör att utvecklare kan börja rikta in sig på båda plattformarna samtidigt.
På den noten kommer OpenGL ES 3.0 att markera en intressant punkt för den grafiska industrin. Tack vare dess användning både i spel och i professionella applikationer måste stationära OpenGL tjäna båda grupperna, en position som ibland lämnar den fångad i mitten och genererar en del kontroverser i processen. Avsaknaden av fullständig modernisering för OpenGL 3.0 gjorde att en del spelutvecklare stökade till, och även om situationen har förbättrats avsevärt sedan dess, försvinner problemet aldrig helt.
OpenGL ES å andra sidan är främst inriktad på konsumentenheter och har lite äldre funktionalitet att tala om, vilket gör det lättare att implementera men också tillåter OpenGL ES att vara relativt mer banbrytande. När allt kommer omkring, för spelutvecklare kommer OpenGL ES 3.0 nästan att bli den OpenGL 3.0 de inte fick 2008, även om geometriskuggningar kommer att saknas särskilt. Följaktligen, även om OpenGL 4.x (eller till och med 3.3) fortfarande är mer avancerat än OpenGL ES 3.0, är det inte uteslutet att vi kommer att se en större andel av OpenGLs datorspelsutveckling använda OpenGL ES i motsats till desktop OpenGL.