4 ms·
Isn't WebGL a fairly direct wrapper over OpenGL ES? The basics get you up to speed with the JS take on this otherwise standard (and very old) API, particularly
by Reelin 7y ago
Isn't WebGL a fairly direct wrapper over OpenGL ES? The basics get you up to speed with the JS take on this otherwise standard (and very old) API, particularly integrating with the DOM and Web Workers. After that, any OpenGL book or tutorial series should do for the rest.
An extremely good resource (IMO) for 3D graphics in general is Learning Modern 3D Graphics Programming (https://paroj.github.io/gltut/ https://paroj.github.io/gltut/). I believe that's a slightly updated version; the original author of the base text goes by Nicol Bolas on SE (https://stackoverflow.com/users/734069/nicol-bolas https://stackoverflow.com/users/734069/nicol-bolas). Note that it uses (I think?) OpenGL 3.3, which is a bit dated at this point. However, the focus of the text is on programmable pipelines and generalized 3D graphics concepts. I've found it to be a tremendously useful resource overall.
Regarding API versions and documentation, note that WebGL 2.0 matches OpenGL ES 3.0, which is in turn compatible with OpenGL 4.3 (https://en.wikipedia.org/wiki/OpenGL_ES#OpenGL_ES_3.0 https://en.wikipedia.org/wiki/OpenGL_ES#OpenGL_ES_3.0). (Did I mention it's an old API?)
As always, consult:
* The ever excellent Mozilla documentation (https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API#Guides_and_tutorials https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API#G...).
* The relevant Khronos API registry (https://www.khronos.org/registry/OpenGL-Refpages/es3.0/ https://www.khronos.org/registry/OpenGL-Refpages/es3.0/).
* The relevant Khronos specifications (https://www.khronos.org/registry/OpenGL/index_es.php#specs3 https://www.khronos.org/registry/OpenGL/index_es.php#specs3).
Edit: I almost forgot, Song Ho Ahn (http://www.songho.ca/opengl/ http://www.songho.ca/opengl/) is an ever indispensable reference for graphics related math and diagrams.
- pjmlp 7y agoWebGL is a subset of OpenGL ES, some stuff like compute shaders isn't available.