Browse Source

Added {EXT_texture_compression,WEBGL_compressed_texture}_s3tc_srgb extensions.

And silently the definitions from EXT_texture_sRGB (core since GL 2.1) as
that's where definitions for sRGB S3TC formats are hiding on desktop.
pull/370/head
Vladimír Vondruš 7 years ago
parent
commit
15f9ec3adf
  1. 2
      doc/opengl-support.dox
  2. 4
      src/Magnum/GL/Context.cpp
  3. 2
      src/Magnum/GL/Extensions.h
  4. 3
      src/MagnumExternal/OpenGL/GL/extensions.txt
  5. 19
      src/MagnumExternal/OpenGL/GL/flextGL.h
  6. 1
      src/MagnumExternal/OpenGL/GLES2/Emscripten/extensions.txt
  7. 1
      src/MagnumExternal/OpenGL/GLES2/extensions.txt
  8. 7
      src/MagnumExternal/OpenGL/GLES2/flextGL.h
  9. 7
      src/MagnumExternal/OpenGL/GLES2/flextGLEmscripten.h
  10. 7
      src/MagnumExternal/OpenGL/GLES2/flextGLWindowsDesktop.h
  11. 1
      src/MagnumExternal/OpenGL/GLES3/Emscripten/extensions.txt
  12. 1
      src/MagnumExternal/OpenGL/GLES3/extensions.txt
  13. 7
      src/MagnumExternal/OpenGL/GLES3/flextGL.h
  14. 7
      src/MagnumExternal/OpenGL/GLES3/flextGLEmscripten.h
  15. 7
      src/MagnumExternal/OpenGL/GLES3/flextGLWindowsDesktop.h

2
doc/opengl-support.dox

@ -454,6 +454,7 @@ Extension | Status
@gl_extension{EXT,sRGB_write_control} | done
@gl_extension{EXT,texture_compression_s3tc} | done
@gl_extension{EXT,shader_integer_mix} | done (shading language only)
@gl_extension{EXT,texture_compression_s3tc_srgb} | |
@gl_extension2{KHR,texture_compression_astc_hdr,KHR_texture_compression_astc_hdr} | done
@gl_extension2{KHR,blend_equation_advanced_coherent,KHR_blend_equation_advanced} | done
@gl_extension{KHR,context_flush_control} | |
@ -523,6 +524,7 @@ Extension | Status
@webgl_extension{EXT,color_buffer_float} | |
@webgl_extension{OES,texture_float_linear} | done
@webgl_extension{WEBGL,compressed_texture_s3tc} | done
@webgl_extension{WEBGL,compressed_texture_s3tc_srgb} |
@section opengl-unsupported Unsupported OpenGL features

4
src/Magnum/GL/Context.cpp

@ -249,7 +249,8 @@ constexpr Extension ExtensionList[]{
_extension(EXT,color_buffer_float),
#endif
_extension(OES,texture_float_linear),
_extension(WEBGL,compressed_texture_s3tc)};
_extension(WEBGL,compressed_texture_s3tc),
_extension(WEBGL,compressed_texture_s3tc_srgb)};
constexpr Extension ExtensionListES300[]{
#ifdef MAGNUM_TARGET_GLES2
_extension(ANGLE,instanced_arrays),
@ -298,6 +299,7 @@ constexpr Extension ExtensionList[]{
_extension(EXT,shader_integer_mix),
#endif
_extension(EXT,polygon_offset_clamp),
_extension(EXT,texture_compression_s3tc_srgb),
_extension(KHR,texture_compression_astc_hdr),
_extension(KHR,blend_equation_advanced_coherent),
_extension(KHR,context_flush_control),

2
src/Magnum/GL/Extensions.h

@ -301,6 +301,7 @@ namespace ANGLE {
_extension(19,WEBGL,color_buffer_float, GLES200, None) // #14
_extension(20,WEBGL,draw_buffers, GLES200, GLES300) // #18
#endif
_extension(21,WEBGL,compressed_texture_s3tc_srgb, GLES200, None) // #32
} namespace MAGNUM {
_extension(30,MAGNUM,shader_vertex_id, GLES300, GLES300)
}
@ -397,6 +398,7 @@ namespace ANDROID {
_extension( 60,EXT,primitive_bounding_box, GLES310, GLES320) // #186
#endif
_extension( 61,EXT,polygon_offset_clamp, GLES200, None) // #252
_extension( 62,EXT,texture_compression_s3tc_srgb, GLES200, None) // #289
} namespace KHR {
_extension( 70,KHR,texture_compression_astc_ldr,GLES200, GLES320) // #117
_extension( 71,KHR,texture_compression_astc_hdr,GLES200, None) // #117

3
src/MagnumExternal/OpenGL/GL/extensions.txt vendored

@ -4,6 +4,9 @@
version 4.6 core
# Need this only for sRGB S3TC definitions, everything else is core since 2.1
extension EXT_texture_sRGB optional
extension AMD_transform_feedback3_lines_triangles optional
extension AMD_vertex_shader_layer optional
extension AMD_shader_trinary_minmax optional

19
src/MagnumExternal/OpenGL/GL/flextGL.h vendored

@ -1596,6 +1596,25 @@ typedef void (APIENTRY *GLDEBUGPROC)(GLenum source,GLenum type,GLuint id,GLenum
#define GL_TRANSFORM_FEEDBACK_OVERFLOW 0x82EC
#define GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW 0x82ED
/* GL_EXT_texture_sRGB */
#define GL_SRGB_EXT 0x8C40
#define GL_SRGB8_EXT 0x8C41
#define GL_SRGB_ALPHA_EXT 0x8C42
#define GL_SRGB8_ALPHA8_EXT 0x8C43
#define GL_SLUMINANCE_ALPHA_EXT 0x8C44
#define GL_SLUMINANCE8_ALPHA8_EXT 0x8C45
#define GL_SLUMINANCE_EXT 0x8C46
#define GL_SLUMINANCE8_EXT 0x8C47
#define GL_COMPRESSED_SRGB_EXT 0x8C48
#define GL_COMPRESSED_SRGB_ALPHA_EXT 0x8C49
#define GL_COMPRESSED_SLUMINANCE_EXT 0x8C4A
#define GL_COMPRESSED_SLUMINANCE_ALPHA_EXT 0x8C4B
#define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F
/* GL_ARB_robustness */
#define GL_NO_ERROR 0

1
src/MagnumExternal/OpenGL/GLES2/Emscripten/extensions.txt vendored

@ -25,3 +25,4 @@ extension EXT_disjoint_timer_query optional
# These are used as a base for WEBGL_* extensions
extension EXT_color_buffer_float optional
extension EXT_texture_compression_s3tc optional
extension EXT_texture_compression_s3tc_srgb optional

1
src/MagnumExternal/OpenGL/GLES2/extensions.txt vendored

@ -80,6 +80,7 @@ extension EXT_disjoint_timer_query optional
extension EXT_texture_sRGB_decode optional
extension EXT_sRGB_write_control optional
extension EXT_texture_compression_s3tc optional
extension EXT_texture_compression_s3tc_srgb optional
extension KHR_texture_compression_astc_hdr optional
extension KHR_blend_equation_advanced_coherent optional
extension KHR_context_flush_control optional

7
src/MagnumExternal/OpenGL/GLES2/flextGL.h vendored

@ -987,6 +987,13 @@ typedef void (APIENTRY *GLDEBUGPROCKHR)(GLenum source,GLenum type,GLuint id,GLen
#define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2
#define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3
/* GL_EXT_texture_compression_s3tc_srgb */
#define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F
/* GL_KHR_texture_compression_astc_hdr */
#define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0

7
src/MagnumExternal/OpenGL/GLES2/flextGLEmscripten.h vendored

@ -499,6 +499,13 @@ typedef khronos_uint64_t GLuint64;
#define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2
#define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3
/* GL_EXT_texture_compression_s3tc_srgb */
#define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F
/* Function prototypes */
/* GL_ANGLE_instanced_arrays */

7
src/MagnumExternal/OpenGL/GLES2/flextGLWindowsDesktop.h vendored

@ -982,6 +982,13 @@ typedef void (APIENTRY *GLDEBUGPROCKHR)(GLenum source,GLenum type,GLuint id,GLen
#define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2
#define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3
/* GL_EXT_texture_compression_s3tc_srgb */
#define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F
/* GL_KHR_texture_compression_astc_hdr */
#define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0

1
src/MagnumExternal/OpenGL/GLES3/Emscripten/extensions.txt vendored

@ -8,3 +8,4 @@ extension EXT_disjoint_timer_query optional
extension EXT_color_buffer_float optional
# These are used as a base for WEBGL_* extensions
extension EXT_texture_compression_s3tc optional
extension EXT_texture_compression_s3tc_srgb optional

1
src/MagnumExternal/OpenGL/GLES3/extensions.txt vendored

@ -45,6 +45,7 @@ extension EXT_disjoint_timer_query optional
extension EXT_texture_sRGB_decode optional
extension EXT_sRGB_write_control optional
extension EXT_texture_compression_s3tc optional
extension EXT_texture_compression_s3tc_srgb optional
extension EXT_shader_integer_mix optional
extension KHR_texture_compression_astc_hdr optional
extension KHR_blend_equation_advanced_coherent optional

7
src/MagnumExternal/OpenGL/GLES3/flextGL.h vendored

@ -1526,6 +1526,13 @@ typedef void (APIENTRY *GLDEBUGPROCKHR)(GLenum source,GLenum type,GLuint id,GLen
#define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2
#define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3
/* GL_EXT_texture_compression_s3tc_srgb */
#define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F
/* GL_KHR_texture_compression_astc_hdr */
#define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0

7
src/MagnumExternal/OpenGL/GLES3/flextGLEmscripten.h vendored

@ -738,6 +738,13 @@ typedef struct __GLsync *GLsync;
#define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2
#define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3
/* GL_EXT_texture_compression_s3tc_srgb */
#define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F
/* Function prototypes */
/* GL_ES_VERSION_2_0 */

7
src/MagnumExternal/OpenGL/GLES3/flextGLWindowsDesktop.h vendored

@ -1518,6 +1518,13 @@ typedef void (APIENTRY *GLDEBUGPROCKHR)(GLenum source,GLenum type,GLuint id,GLen
#define GL_COMPRESSED_RGBA_S3TC_DXT3_EXT 0x83F2
#define GL_COMPRESSED_RGBA_S3TC_DXT5_EXT 0x83F3
/* GL_EXT_texture_compression_s3tc_srgb */
#define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E
#define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F
/* GL_KHR_texture_compression_astc_hdr */
#define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0

Loading…
Cancel
Save