Što je 3D WebGL™?

Web-based Graphical Library (WebGL™) je apstraktno programsko sučelje (API) dizajnirano da omogući korištenje trodimenzionalne (3D) grafike izravno u web pregledniku bez potrebe za softverom ili dodacima odvojenim od jezgre preglednika. . Razlika između 3D WebGL™ i drugih 3D grafičkih jezika temeljenih na pregledniku — kao što je jezik za označavanje virtualne stvarnosti (VRML) — je u tome što 3D WebGL™ omogućuje izravan pristup jedinici za grafičku obradu (GPU) na hardverskoj kartici za prikaz koja se nalazi u Računalo. Druga razlika je u tome što 3D WebGL™ nije zaseban jezik, već API implementiran kroz JavaScript® skriptni jezik koji izvorno razumiju gotovo svi web preglednici. Iako je ova vrsta izravnog pristupa na niskoj razini hardveru računalnog sustava jedna od prednosti WebGL™-a, ona je također jedan od većih problema, jer predstavlja niz sigurnosnih problema koji se ne mogu lako riješiti.

Jedan važan razvoj koji je omogućio 3D WebGL™ je uvođenje elementa platna u specifikaciju HyperText Markup Language verzija 5 (HTML5). Element platna omogućuje pristup na nižoj razini prikazu koji se može nacrtati i održavati u stilu koji je u skladu s postojećim vrstama API-ja za renderiranje u drugim računalnim programskim jezicima. WebGL™ API radi s ovim ubrzanim platnom kako bi pružio mogućnost vrlo brzog renderiranja složenih scena bez potrebe za oslanjanjem na softversku emulaciju na različitim platformama ili implementacijama.

3D WebGL™ API ne koristi samo element platna, već se također temelji na Otvorenoj grafičkoj biblioteci za ugrađene sustave (OpenGL ES®). Ovo je prijenosna verzija standardne OpenGL® biblioteke koja je dizajnirana da bude prenosiva ne samo između različitih operacijskih sustava računala, već i na svim uređajima koji zahtijevaju korištenje 3D grafike niske razine. Ovaj mali otisak omogućuje integraciju biblioteke u bilo koji preglednik za gotovo svaki uređaj.

Implementacija 3D WebGL™ dopušta razvoj interaktivnih programa koji se mogu pokrenuti izravno s web stranice ili preuzeti i pokrenuti kao samostalna aplikacija unutar web preglednika. Može se koristiti za izradu 3D video igara, obrazovnog softvera, simulacija i softvera za 3D vizualizaciju za poslovna i znanstvena istraživanja. Korištenjem preglednika kao omotača, 3D okruženja se mogu razviti bez brige o ponavljajućem standardnom kodu za osnovna sučelja.

Jedan od najvećih nedostataka korištenja 3D WebGL™ i onaj koji sprječava njegovo široko prihvaćanje kod određenih tvrtki za proizvodnju softvera i hardvera je sigurnosni rizik koji on predstavlja. Sposobnost programa da pristupi GPU-u može zlonamjernom programu dati mogućnost da prisili glavni računalni sustav da izvrši štetni kod. Također se pokazalo da su napadi uskraćivanja usluge (DOS) mogući pomoću WebGL™ API-ja. Iz tog razloga, postoje neke velike računalne tvrtke koje odbijaju u potpunosti podržati WebGL™ u svojim proizvodima.