diff --git a/src/MagnumExternal/OpenGL/GLES3/Emscripten/extensions.txt b/src/MagnumExternal/OpenGL/GLES3/Emscripten/extensions.txt index 47594844b..41d4d1ba9 100644 --- a/src/MagnumExternal/OpenGL/GLES3/Emscripten/extensions.txt +++ b/src/MagnumExternal/OpenGL/GLES3/Emscripten/extensions.txt @@ -5,6 +5,7 @@ version 3.0 es extraspec https://raw.githubusercontent.com/google/angle/master/scripts/gl_angle_ext.xml +extraspec webgl.xml extension EXT_texture_filter_anisotropic optional # It's actually EXT_disjoint_timer_query_webgl2, but that's not known to gl.xml @@ -35,6 +36,8 @@ extension ANGLE_base_vertex_base_instance optional # fortunately ES3 defines these constants on its own so I don't need it anyway. # extension ANGLE_compressed_texture_etc optional +extension MAGNUM_what_webgl_has_but_es_not optional + begin functions blacklist # Not present in WEBGL_blend_equation_advanced_coherent BlendBarrierKHR diff --git a/src/MagnumExternal/OpenGL/GLES3/Emscripten/webgl.xml b/src/MagnumExternal/OpenGL/GLES3/Emscripten/webgl.xml new file mode 100644 index 000000000..b7769ab11 --- /dev/null +++ b/src/MagnumExternal/OpenGL/GLES3/Emscripten/webgl.xml @@ -0,0 +1,24 @@ + + + + This contains signatures of functions that are in WebGL 2 but not in ES + and (of course) gl.xml doesn't bother adding any WebGL-specific special + case. + + + + + + + + + + + + + + + + diff --git a/src/MagnumExternal/OpenGL/GLES3/flextGLEmscripten.h b/src/MagnumExternal/OpenGL/GLES3/flextGLEmscripten.h index b2d76f8c8..cb3afe11b 100644 --- a/src/MagnumExternal/OpenGL/GLES3/flextGLEmscripten.h +++ b/src/MagnumExternal/OpenGL/GLES3/flextGLEmscripten.h @@ -1173,6 +1173,10 @@ GLAPI void glDisableiEXT(GLenum, GLuint); GLAPI void glEnableiEXT(GLenum, GLuint); GLAPI GLboolean glIsEnablediEXT(GLenum, GLuint); +/* GL_MAGNUM_what_webgl_has_but_es_not */ + +GLAPI void glGetBufferSubData(GLenum, GLintptr, GLsizeiptr, void *); + /* GL_OVR_multiview */ GLAPI void glFramebufferTextureMultiviewOVR(GLenum, GLenum, GLuint, GLint, GLint, GLsizei);