WebGL
Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2021. december 2-án felülvizsgált
verziótól ; az ellenőrzések 2 szerkesztést igényelnek .
A WebGL ( Web-based Graphics Library ) egy többplatformos API böngészőn belüli 3D grafikákhoz , amelyet a Khronos Group non-profit szervezet fejlesztett ki . A WebGL a GLSL shader programozási nyelvet használja [1] Archivált 2018. október 13-án a Wayback Machine -nél . A WebGL HTML5 elemként fut, ezért a böngésző dokumentumobjektum-modelljének (DOM API) teljes körű része. Bármilyen programozási nyelvvel használható, amely képes együttműködni a DOM API-val, például JavaScript , Rust [2] Archivált : 2018. június 17. a Wayback Machine -nél , Java , Kotlin [3] Archivált : 2018. október 13. a Wayback Machine -nél és mások . A Google ( Chrome ), a Mozilla ( Firefox ) és az Apple ( Safari ) összes vezető böngészőfejlesztő tagja a Khronosnak, és a WebGL-t alkalmazza böngészőjében. Az alacsony szintű OpenGL támogatás használatának köszönhetően a WebGL kód egy része közvetlenül végrehajtható a videokártyákon . A WebGL a HTML canvas elem környezete , amely 3D grafikus API -t biztosít beépülő modulok használata nélkül [2] . Az első specifikáció 2011. március 3-án jelent meg. A jelenlegi 2.0-s verzió (nem kompatibilis az 1.0-s verzióval) 2017. február 27-től érhető el [3] [4] .
Alapelvek
Az API az OpenGL ES 2.0-n alapul, és lehetővé teszi a 3D grafika [5] megvalósítását a böngészőben, használja a HTML5 canvas elemet és a DOM - mal is működik . Az automatikus memóriakezelést a JavaScript nyelv biztosítja [2] .
Verziók
- WebGL 1.0 – Az OpenGL ES 2.0-ra építve a GLSL ES 1.00 [6] verziója támogatott a shaderek számára .
- WebGL 2.0 – Az OpenGL ES 3.0-ra épülve, a GLSL ES 1.00 és 3.00 [7] verziói támogatottak a shaderek számára .
Megvalósítás
- A Mozilla Firefox - WebGL a 4.0-s verzió óta minden olyan platformon engedélyezett, amelyen a megfelelő grafikus kártya van naprakész illesztőprogramokkal [8] .
- A Google Chrome - WebGL alapértelmezés szerint minden verzióban engedélyezve van 9 óta [9] .
- Safari – Kísérletileg támogatja a WebGL-t az 5.1-es verzió óta, a 8.0-s verzióban a teljes támogatás implementálva és alapértelmezés szerint engedélyezve van.
- Opera – A WebGL az Opera 12.0-ban van megvalósítva, de alapértelmezés szerint le van tiltva.
- Internet Explorer – Az Internet Explorer 11 -től kezdve a WebGL hivatalosan támogatott [10] . A 11-es verzió előtt a Chrome Frame és az IEWebGL beépülő modulokat független fejlesztők bocsátották ki, hogy biztosítsák a WebGL támogatásához szükséges lehetőségeket az Internet Explorer böngészőben.
Mobil böngészők
Munkacsoport
A szabványt kidolgozó munkacsoport tagjai: Khronos Group , Apple Safari , Google Chrome , Mozilla Firefox és Opera böngészők fejlesztői , valamint az AMD és az Nvidia [18] szakemberei .
Történelem
A WebGL a Canvas 3D-vel végzett kísérleteiből származik, amelyet Vladimir Vukićević , a Mozilla munkatársa végzett , aki 2006-ban fejlesztette ki a Canvas 3D prototípust. 2007 végén a Mozilla [19] és az Opera [20] is elkészítette a saját külön implementációját.
A Mozilla és a Khronos 2009 elején megalakította a WebGL Munkacsoportot [21] , és 2009. december 10- én a konzorcium közzétette a WebGL specifikáció első tervezetét [18] [22] . A csapat elnöke , Arun Ranganathan kijelentette, hogy a specifikáció véglegesítése 2010 első negyedévében várható [18] [22] . A specifikációk első kiadásának végleges változatát 2011. március 3-án mutatták be San Franciscóban [23] [24] .
A specifikáció következő verziójának fejlesztése 2013-ban kezdődött. Az OpenGL ES 3.0-n alapuló WebGL 2.0 szabványt a Khronos konzorcium 2017 januárjában ratifikálta [25] . A szabvány új verziója a Firefox 51-ben, a Chrome 56-ban és az Opera 43-ban valósult meg [26] .
Biztonság
2011 júniusában a Microsoft aggodalmát fejezte ki a WebGL technológia biztonságával kapcsolatban, a szerinte túlzott hardver-hozzáférési jogokra és a megbízhatatlan szolgáltatásmegtagadási ( DoS ) védelmi mechanizmusokra hivatkozva. [27] Mark Shaver, a Mozilla alelnöke visszautasította a Microsoft kritikáját, és eltúlzottnak nevezte a bemutatott érveket. Azt is megjegyezte, hogy a Microsoft saját 3D -s webtechnológiával rendelkezik, a Silverlight 5-tel, amely ugyanazokon az elveken alapul, mint a WebGL, amelyet azonban a Microsoft meglehetősen megbízhatónak tart. [28] A Microsoft később megváltoztatta a WebGL technológiához való hozzáállását, és bevezette a támogatást az Internet Explorer 11 böngészőjében. [29]
Az Apple Corporation annak ellenére, hogy biztonsági okokból késleltette a döntést a WebGL támogatásáról a Safari böngészőben, ezt a döntést a 2014 -es WWDC konferencián jelentette be. [30]
Könyvtárak
A WebGL-alkalmazások fejlesztésének egyszerűsítésére különféle keretrendszerek és könyvtárak léteznek . Az első nyilvános könyvtár a WebGLU [31] [32] volt . A WebGL további könyvtárai közé tartozik a GLGE , C3DL , Copperlicht [33] , SpiderGL, gwt-g3d [34] (csomagoló a GWT -hez ), SceneJS , X3DOM , Processing.js , Babylon.js , Three.js , Turbulenz, OSGJS [35] , XB PointStream és CubicVR.js [36] .
A Blend4Web lehetővé teszi a WebGL tartalom vizuális szerkesztését a Blender nyílt forráskódú 3D modellező és animációs csomagjában , és egy műveletben exportálhatja azt a böngészőkben való működéshez [37] .
A Verge3D egy WebGL-renderer, amely közvetlenül a szabványos szerkesztőkből exportálja a jeleneteket (az Autodesk 3ds Max és a Blender által támogatott ), interaktív szkriptek hozzáadásának lehetőségével programozás nélkül [38] .
Kompatibilitási réteg ANGLE
Az ANGLE (Almost Native Graphics Layer Engine) [39] egy BSD -licencű könyvtár , amely lehetővé teszi a WebGL-tartalom OpenGL ES 2.0-ra való lefordítását, DirectX 9 és 11 API-k hívását, amelyek kölcsönhatásba lépnek a Microsoft Windows platformokkal anélkül, hogy további OpenGL -illesztőprogramokra lenne szükség . Alapértelmezés szerint a Google Chrome és a Firefox böngészőkben használatos.
Lásd még
Jegyzetek
- ↑ WebGL 2.0 specifikáció . Hozzáférés dátuma: 2017. február 8. Az eredetiből archiválva : 2017. január 28. (határozatlan)
- ↑ 1 2 WebGL - OpenGL ES 2.0 webhez . Khronos.org. Letöltve: 2011. május 14. Az eredetiből archiválva : 2012. április 12.. (határozatlan)
- ↑ A Khronos API-frissítéseket és új munkacsoportokat mutat be a GDC-nél . Letöltve: 2018. október 12. Az eredetiből archiválva : 2017. március 8. (határozatlan)
- ↑ WebGL áttekintése . Hozzáférés dátuma: 2009. december 12. Az eredetiből archiválva : 2009. december 15. (határozatlan)
- ↑ WebGL specifikáció . Khronos.org. Letöltve: 2011. május 14. Az eredetiből archiválva : 2012. április 12.. (határozatlan)
- ↑ WebGL specifikáció . Hozzáférés dátuma: 2017. február 8. Az eredetiből archiválva : 2017. március 27. (határozatlan)
- ↑ WebGL 2 specifikáció . Hozzáférés dátuma: 2017. február 8. Az eredetiből archiválva : 2017. január 28. (határozatlan)
- ↑ Mozilla Firefox 4 kiadási megjegyzések (a hivatkozás nem érhető el) . Letöltve: 2011. augusztus 29. Az eredetiből archiválva : 2011. március 23.. (határozatlan)
- ↑ A Google kiadja a Chrome 9-et; jön a Google Instant, WebGL - FierceCIO:TechWatch (downlink) . Letöltve: 2011. augusztus 29. Az eredetiből archiválva : 2011. október 25.. (határozatlan)
- ↑ WebGL (Windows) . Hozzáférés dátuma: 2014. január 16. Az eredetiből archiválva : 2014. január 16. (határozatlan)
- ↑ suihkulokki. WebGL N900-on . Suihkulokki.blogspot.com (2010. június 7.). Letöltve: 2011. május 14. Az eredetiből archiválva : 2012. április 12.. (határozatlan)
- ↑ Halevy, Ronen PlayBook OS 2.0 fejlesztői bétaverzió Tartalmazza a WebGL-t, a Flash 11-et és az AIR 3.0-t . BerryReview . Letöltve: 2011. november 15. Az eredetiből archiválva : 2013. március 12.. (határozatlan)
- ↑ Brandon Jones. Működtesse a WebGL-t az Android Chrome bétaverzióján . Tojicode (2013. január 10.). Letöltve: 2013. február 12. Az eredetiből archiválva : 2013. március 12.. (határozatlan)
- ↑ iclkevin. WebGL mobileszközökön . iChemLabs (2011. november 12.). Letöltve: 2011. november 25. Az eredetiből archiválva : 2013. március 12.. (határozatlan)
- ↑ Az Xperia™ telefonok támogatják először a WebGL™ – Developer World szolgáltatást . blogs.sonyericsson.com . A Sony Ericsson fejlesztői program (2011. november 29.). Letöltve: 2011. december 5. Az eredetiből archiválva : 2013. március 12.. (határozatlan)
- ↑ Opera Mobile 12 . Opera szoftver. Hozzáférés dátuma: 2012. február 27. Az eredetiből archiválva : 2013. március 12. (határozatlan)
- ↑ WebGL iOS 8 Safari és webview rendszeren (lefelé hivatkozás) . Letöltve: 2014. július 9. Az eredetiből archiválva : 2014. július 14.. (határozatlan)
- ↑ 1 2 3 A Khronos közzétette a WebGL archív példányának vázlatos változatát 2015. szeptember 9-én a Wayback Machine -en // Lenta.ru , 2009.12.11.
- ↑ Canvas 3D: GL teljesítmény, web-stílusú . blog.vlad1.com. Letöltve: 2011. május 14. Az eredetiből archiválva : 2012. április 12.. (határozatlan)
- ↑ A vászon áthelyezése egy másik dimenzióba . My.opera.com (2007. november 26.). Letöltve: 2011. május 14. Az eredetiből archiválva : 2012. április 12.. (határozatlan)
- ↑ Khronos Részletek A WebGL kezdeményezés a hardveresen gyorsított 3D grafikák internetre vitelére . Khronos.org (2009. augusztus 4.). Letöltve: 2011. május 14. Az eredetiből archiválva : 2012. április 12.. (határozatlan)
- ↑ 1 2 _ _ _ _ _
- ↑ Kurt Bakke. WebCL a GPU-gyorsított webalkalmazások engedélyezéséhez . ConceivablyTech (2011. március 3.). Letöltve: 2011. március 4. Az eredetiből archiválva : 2012. április 12..
- ↑ Ékezet. A Khronos közzéteszi a WebGL 1.0 specifikációt – 3D grafikus gyorsítás beépülő modulok nélküli weboldalakhoz (hivatkozás nem érhető el) . iXBT.com (2011. március 3.). Letöltve: 2011. március 4. Az eredetiből archiválva : 2011. március 6.. (Orosz)
- ↑ WebGL 2 specifikáció . khronos.org (2017. július 5.). Letöltve: 2017. augusztus 16. Az eredetiből archiválva : 2017. augusztus 8.. (határozatlan)
- ↑ WebGL - Web API-k . MDN . Letöltve: 2017. augusztus 16. Az eredetiből archiválva : 2017. augusztus 28.. (határozatlan)
- ↑ A WebGL ártalmasnak tekinthető . Microsoft (2011. június 16.). Letöltve: 2011. június 16. Az eredetiből archiválva : 2012. április 12.. (határozatlan)
- ↑ A Mozilla visszautasítja a Microsoftnak a WebGL-lel kapcsolatos kritikáját . Az érdeklődő (2011. június 20.). Letöltve: 2011. június 29. Az eredetiből archiválva : 2012. április 12.. (határozatlan)
- ↑ A Microsoft (végre) megerősíti az Internet Explorer 11 WebGL támogatását . TechCrunch (2013. június 26.). Letöltve: 2015. július 7. Az eredetiből archiválva : 2015. július 9.. (határozatlan)
- ↑ Az iOS8 Safari támogatja a WebGL-t – az új korszak megkezdődhet . I Programozó (2014. június 4.). Letöltve: 2015. július 7. Az eredetiből archiválva : 2015. július 7. (határozatlan)
- ↑ OneGeek/WebGLU GitHub . Letöltve: 2013. március 15. Az eredetiből archiválva : 2013. március 16.. (határozatlan)
- ↑ Benjamin DeLillo. Az első WebGL kiadás . Bjatr.blogspot.com (2009. október 2.). Letöltve: 2011. május 14. Az eredetiből archiválva : 2012. április 12.. (határozatlan)
- ↑ CopperLicht - JavaScript 3D Engine WebGL használatával . Letöltve: 2013. március 14. Az eredetiből archiválva : 2013. március 16.. (határozatlan)
- ↑ gwt-g3d - 3D könyvtár a GWT-hez - Google Project Hosting . Letöltve: 2013. március 14. Az eredetiből archiválva : 2013. március 16.. (határozatlan)
- ↑ OSG.JS, szerző: cedricpinson . Letöltve: 2013. március 14. Az eredetiből archiválva : 2013. március 16.. (határozatlan)
- ↑ cjcliffe/CubicVR.js GitHub . Letöltve: 2013. március 14. Az eredetiből archiválva : 2013. március 16.. (határozatlan)
- ↑ A Blend4Web hivatalos oldala - A projektről . Blend4web.com. Hozzáférés időpontja: 2015. július 3. Az eredetiből archiválva : 2015. július 1. (határozatlan)
- ↑ Verge3D . Soft8Soft. Letöltve: 2018. június 14. Az eredetiből archiválva : 2018. június 14. (határozatlan)
- ↑ angleproject - ANGLE: Almost Native Graphics Layer Engine - Google Project Hosting . Letöltve: 2013. március 14. Az eredetiből archiválva : 2013. március 16.. (határozatlan)
Linkek