[go: up one dir, main page]

WebGL

WebGL (Web Graphics Library) ir JavaScript API 3D grafikas attēlu renderēšanai jebkurā saderīgā tīmekļa pārlūkprogrammā, neizmantojot spraudņus.[1] WebGL ir integrēts pilnīgi visos tīmekļa pārlūka standartos, ļaujot paātrināt GPU darbību fizikas un attēlu apstrādes laikā. WebGL elementi var tikt izmantoti kopā ar citiem HTML elementiem, un izvietoti dažādās vietās.[2] WebGL programmas sastāv no kontroles koda, kas rakstīts JavaScript valodā un šeidera koda, kas ir rakstīts OpenGL Shading Valodā (GLSL). Šī valoda ir līdzīga C vai C++ un tiek izpildīta uz datora grafiskā procesora (GPU). WebGL izstrādājusi un uztur bezpeļņas organizācija Khronos Group.

Dizains

WebGL 1.0 ir balstīts uz OpenGL ES 2.0 un nodrošina 3D grafikas saskarni. Tas izmanto HTML5 canvas elementu un tam var piekļūt, izmantojot Dokumentu Objektu Modeļa (DOM) saskarni.

WebGL 2.0 ir balstīts uz OpenGL ES 3.0 un nodrošina daudzu WebGL 1.0 paplašinājumu pieejamību.

Kā daļa no JavaScript valodas, tiek nodrošināta automātiska atmiņas pārvaldība.

Līdzīgi kā OpenGL ES 2.0, arī WebGL nav noteiktu funkciju Api ieviesta OpenGL 1.0 un nosodāms , OpenGL 3.0. Šo funkcionalitāti var tā vietā sniedz lietotājiem, sniedzot shader kods un konfigurēšana, datu saites, JavaScript.

Shaders in WebGL are expressed directly in GLSL and passed to the WebGL API as text strings. The WebGL implementation compiles these shader instructions to GPU code. This code is executed for each vertex sent through the API and for each pixel rasterized to the screen.

References

  1. Gregg Tavares. «WebGL Fundamentals». HTML5 Rocks, 2012-02-09.
  2. Tony Parisi. «WebGL: Up and Running». O'Reilly Media, Incorporated, 2012-08-15.

Kļūda atsaucē: Kļūda atsaucē: <ref> iezīme ar nosaukumu "WebGLWebsite" ir definēta <references>, taču nav izmantota tekstā
Kļūda atsaucē: Kļūda atsaucē: <ref> iezīme ar nosaukumu "WebGLSpecification" ir definēta <references>, taču nav izmantota tekstā
Kļūda atsaucē: Kļūda atsaucē: <ref> iezīme ar nosaukumu "WebGL2Specification" ir definēta <references>, taču nav izmantota tekstā
Kļūda atsaucē: Kļūda atsaucē: <ref> iezīme ar nosaukumu "WebGLFinal" ir definēta <references>, taču nav izmantota tekstā

Kļūda atsaucē: Kļūda atsaucē: <ref> iezīme ar nosaukumu "WebGLAnnouncement" ir definēta <references>, taču nav izmantota tekstā