Co je 3D WebGL ™?
Webová grafická knihovna (WebGL ™) je abstraktní programovací rozhraní (API), které umožňuje použití trojrozměrné (3D) grafiky přímo ve webovém prohlížeči bez potřeby softwaru nebo plug-inů oddělených od hlavního prohlížeče. . Rozdíl mezi 3D WebGL ™ a dalšími grafickými jazyky 3D založenými na prohlížeči - jako je značkovací jazyk virtuální reality (VRML) - spočívá v tom, že 3D WebGL ™ umožňuje přímý přístup k jednotce grafického zpracování (GPU) na hardwarové zobrazovací kartě přítomné v počítač. Další rozdíl spočívá v tom, že 3D WebGL ™ není samostatný jazyk, ale API implementované skriptovacím jazykem JavaScript®, kterému nativně rozumí téměř všechny webové prohlížeče. Zatímco tento typ přímého, nízkoúrovňového přístupu k hardwaru počítačového systému je jednou ze silných stránek produktu WebGL ™, představuje také jeden z větších problémů, protože představuje řadu problémů se zabezpečením, které nelze snadno vyřešit.
Jedním důležitým vývojem, který umožnil 3D WebGL ™, je zavedení prvku plátno ve specifikaci jazyka HyperText Markup Language verze 5 (HTML5). Prvek plátno umožňuje nízkoúrovňový přístup k výřezu, který lze nakreslit a udržovat ve stylu konzistentním s existujícími typy vykreslování API v jiných programovacích jazycích počítače. Rozhraní WebGL ™ API pracuje s tímto zrychleným plátnem a umožňuje tak rychle vykreslit složité scény, aniž by se muselo spoléhat na emulaci softwaru napříč různými platformami nebo implementacemi.
Rozhraní 3D WebGL ™ API používá nejen prvek plátno, ale také je založeno na Open Graphics Library for Embedded Systems (OpenGL ES®). Jedná se o přenosnou verzi standardní knihovny OpenGL®, která je navržena tak, aby byla přenositelná nejen mezi různými počítačovými operačními systémy, ale také napříč jakýmkoli zařízením, které vyžaduje použití 3D grafiky nízké úrovně. Tento malý půdorys umožňuje knihovnu integrovat do jakéhokoli prohlížeče pro téměř jakékoli zařízení.
Implementace 3D WebGL ™ umožňuje vývoj interaktivních programů, které lze spustit přímo z webové stránky nebo stáhnout a spustit jako samostatnou aplikaci ve webovém prohlížeči. Může být použit k vytváření 3D videoher, vzdělávacího softwaru, simulací a 3D vizualizačního softwaru pro obchodní a vědecký výzkum. Použitím prohlížeče jako aplikace wrapper lze 3D prostředí vyvinout, aniž byste se museli obávat opakujícího se kódu základní desky pro základní rozhraní.
Jednou z největších nevýhod používání 3D WebGL ™ a jedné, která brání jeho rozsáhlému přijetí u některých společností vyrábějících software a hardware, je bezpečnostní riziko, které představuje. Schopnost programu získat přístup k GPU může dát škodlivému programu schopnost donutit hostitelský počítačový systém ke spuštění škodlivého kódu. Ukázalo se také, že útoky typu odmítnutí služby (DOS) jsou možné pomocí rozhraní API WebGL ™. Z tohoto důvodu existují některé velké počítačové společnosti, které odmítají plně podporovat WebGL ™ ve svých produktech.