WebGL

Awal mula WebGL ialah  OpenGL ES 2.0 (untuk embedded system), OpenGL dengan spesifikasinya untuk perangkat seperti iphone dan ipad.  Kemudian spesifikasinya dikembangkan menjadi  komponen  terpisah dengan tujuan untuk menyediakan portabilitas antar berbagai macam sistem operasi dan perangkat. Ide pengembangannya antara lain ialah berbasis web, real-time rendering  yang memberikan kemungkinan lingkungan 3D di web, visualisasi scientific dan medical imaging.

WebGL merupakan standar untuk grafik 3D di web. Dengan OpenGL pada WebGL, pengembang dapat memanfaatkan kekuatan dari rendering grafik komputer dengan hanya menggunakan javascript, web browser dan standar teknologi web. WebGL adalah bagian dari keluarga dari teknologi HTML 5, Meskipun tidak dalam spesifikasi resmi, kebanyakan browser yang mendukung HTML5  mendukung WebGL. WebGL merupakan komponen penting  dan
cocok untuk mengubah browser modern menjadi platform aplikasi kelas  satu. WebGL adalah library grafis 3D yang memungkinkan browser untuk membuat adegan 3D dengan cara standar dan efisien.

WebGL memiliki pendekatan rendering yang berbasis klien: elemen yang menyusun bagian dari adegan 3D  didownload dari server. Namun, semua proses yang diperlukan untuk mendapatkan gambar dilakukan secara lokal menggunakan hardware grafis di klien. WebGL menyajikan beberapa keunggulan :

  • Bekerja dengan JavaScript memungkinkan pengembang untuk mengakses semua bagian dari DOM
  • Karena WebGL diprogram dalam JavaScript, sehingga lebih mudah untuk mengintegrasikan aplikasi WebGL dengan  library JavaScript
  • Manajemen memori otomatis
  • Kinerja aplikasi WebGL sebanding dengan aplikasi standalone
  • Multiplatform
  • Nol kompilasi

Komponen aplikasi WebGL antara lain :

  • Canvas  : adalah  tempat  dimana komponen object akan diletakkan.  Canvas merupakan  elemen standar HTML5, dengan demikian dapat diakses dengan menggunakan Document Object Model (DOM) melalui JavaScript.
  • Object : adalah entitas 3D yang membentuk bagian dari adegan itu.
  • Lights : pencahayaan dibutuhkan dalam 3D
  • Camera  :  untuk melihat dan mengeksplorasi adegan 3D dalam canvas yang berfungsi sebagai viewport.

Contoh – contoh website yang menggunakan webGL :