Salah satu cara untuk melihatnya adalah WebGL adalah OpenGL ES 2.0 dan OpenGL ES 2.0 adalah OpenGL dengan semua legacy cruft dihapus.
Sejak shader ditambahkan semua warisan pipa fungsi tetap glPushMatrix
, glLight
, glVertex
dll semua tidak masuk akal untuk menjaga sekitar.
Jadi, apakah fitur "hilang" atau fitur "usang" yang benar dan benar?
Fitur spesifik apa yang Anda cari?
WebGL / OpenGL ES 2.0 adalah vertex dasar dan fragmen shader. Ada dukungan terbatas untuk tekstur non-power-of-2 dan hanya beberapa format tekstur (tidak terlalu banyak batas adalah 99% dari semua tekstur adalah RGB8 atau RGBA8). Dukungan untuk tekstur titik apung adalah opsional tetapi sebagian besar perangkat mendukungnya. Dukungan untuk rendering ke tekstur floating point lebih jarang. Sedikit jika ada perangkat seluler yang mendukung render ke tekstur titik mengambang.
WebGL2 (baru dikirim) dan OpenGL ES 3.0 menambahkan satu ton format tekstur baru termasuk tekstur berbasis integer dan tekstur 3D. Ini menghapus batas tekstur non-power-of-2. Itu menambahkan mengubah umpan balik (kemampuan untuk shader vertex untuk menulis ke buffer). Itu juga menambahkan permintaan oklusi. Objek Array Vertex adalah standar (mereka opsional di WebGL / ES 3.0). Ada banyak fitur kecil lainnya.
ES 3.1 (dan mungkin versi WebGL berikutnya) menambahkan compute shaders (kemampuan untuk shader fragmen untuk melakukan akses tulis acak). Shader fragmen hanya bisa menulis ke fragmen / piksel yang diminta darinya saat ini sedangkan menghitung shader dan menulis di mana saja mereka inginkan.
Fitur apa lagi yang ingin Anda gunakan?