UNIVERSITAS BHAYANGKARA SURABAYA
WebGL (Web Graphics Library) adalah JavaScript API untuk rendering grafis 3D interaktif dan grafis 2D dalam browser web yang kompatibel tanpa menggunakan plug-in. WebGL terintegrasi sepenuhnya ke semua standar web browser yang memungkinkan penggunaan percepatan GPU fisika dan pengolahan gambar dan efek sebagai bagian dari kanvas halaman web. Elemen WebGL dapat dicampur dengan elemen HTML lainnya dan composited dengan bagian-bagian lain dari latar belakang halaman atau halaman. WebGL program terdiri dari kode kontrol ditulis dalam JavaScript dan kode shader yang dijalankan pada komputer Graphics Processing Unit (GPU). WebGL dirancang dan dipelihara oleh Kelompok Khronos non-profit.
HTML5 melakukan standarisasi pada tag
<canvas>
dan mempopulerkan Canvas API untuk melakukan manipulasi gambar 2D. Selain Canvas API, <canvas>
juga dapat dipakai untuk menampilkan grafis 3D dengan menggunakan WebGL API. Karena WebGL cukup rumit dan berbeda jauh dari Canvas API, pada artikel ini saya akan berusaha menuliskan cara kerja WebGL dengan hanya memakai JavaScript biasa tanpa library eksternal sama sekali.
Salah satu subset dari OpenGL adalah Open GL ES (Embedded Systems) yang ditujukan untuk perangkat portable. Saya dapat menggunakan OpenGL ES API di Java ME melalui Java Binding for the OpenGL ES API (JSR 239). WebGL adalah API dibuat berdasarkan OpenGL ES API. Bahasa yang dipakai untuk mempogram WebGL adalah JavaScript.
WebGL biasanya digunakan untuk desain web dan game 3D yang berbasis web. WebGL juga juga digunakan oleh beberapa peneliti untuk tujuan sains. Sebagai contoh, dalam buku yang berjudul "Cellular Automata", peneliti menggunakan WebGL untuk mensimulasikan alur Debris. Sedangkan pada paper "Visualization of molecular structures using state-of-the-art techniques in WebGL", peneliti mensimulasikan molekul didalamnya. NASA juga membangun aplikasi web yang interaktif yang disebut Experience Curiosity untuk merayakan ulang tahun ketiga dimana Curiosity Rover mendarat di Mars.
WebGL biasanya digunakan untuk desain web dan game 3D yang berbasis web. WebGL juga juga digunakan oleh beberapa peneliti untuk tujuan sains. Sebagai contoh, dalam buku yang berjudul "Cellular Automata", peneliti menggunakan WebGL untuk mensimulasikan alur Debris. Sedangkan pada paper "Visualization of molecular structures using state-of-the-art techniques in WebGL", peneliti mensimulasikan molekul didalamnya. NASA juga membangun aplikasi web yang interaktif yang disebut Experience Curiosity untuk merayakan ulang tahun ketiga dimana Curiosity Rover mendarat di Mars.
Desain
WebGL didasarkan pada OpenGL ES 2.0 dan menyediakan sebuah API untuk grafis 3D. Untuk alasan keamanan, GL_ARB_robustness (OpenGL 3.x) atau GL_EXT_robustness (OpenGL ES) diperlukan. Ia menggunakan elemen kanvas HTML5 dan diakses menggunakan antarmuka Document Object Model. Manajemen memori otomatis disediakan sebagai bagian dari bahasa JavaScript.
Sejarah
WebGL tumbuh dari eksperimen Canvas 3D dimulai oleh Vladimir Vukićević di Mozilla. Vukićević pertama menunjukkan prototipe 3D kanvas pada tahun 2006. Pada akhir tahun 2007, baik Mozilla dan Opera telah membuat implementasi sendiri terpisah. Pada awal 2009, non-profit teknologi konsorsium Grup Khronos memulai Kelompok Kerja WebGL, dengan partisipasi awal dari Apple, Google, Mozilla, Opera, dan lain-lain. Versi 1.0 dari spesifikasi WebGL dirilis Maret 2011. Pada Maret 2012, ketua kelompok kerja adalah Ken Russell. Aplikasi awal Terkemuka dari WebGL termasuk Google Maps dan Zygote Body.
Kelemahan
Meskipun perhitungan grafik 3D yang diperlukan untuk WebGL ditingkatkan ke GPU, perhitungannya harus ditulis dengan baik. Jika Anda ingin menulis kode WebGL Anda dari awal, tanpa bantuan dan bantuan kerangka kerja, Anda mungkin ingin memoles Matematika Lanjut 101 Anda. Pada kenyataannya, WebGL hanyalah mesin rasterisasi. Ini menarik poin dan garis yang Anda berikan.Contoh kode di bawah ini adalah salah satu versi pertama yang kami gunakan untuk menggambar cincin dan sapuan radar di
Hal -Hal yang dapat dibuat menggunakan WEBGL
Aplikasi augmented reality
Pertandingan
Visualisasi data waktu nyata
Peta
Pencetakan 3D
Virtualisasi
Pengolahan citra
Penggunaan dunia nyata untuk WebGL tidak terbatas .