Browse Source

GL: recognize NV_geometry_shader_passthrough.

pull/168/head
Vladimír Vondruš 3 years ago
parent
commit
5f287df332
  1. 1
      doc/changelog.dox
  2. 2
      doc/opengl-support.dox
  3. 4
      src/Magnum/GL/Context.cpp
  4. 14
      src/Magnum/GL/Extensions.h

1
doc/changelog.dox

@ -160,6 +160,7 @@ See also:
@ref GL::TextureFormat values available also on OpenGL ES 2.0 and WebGL.
The values were already present in WebGL 2.0 builds by accident before,
without documenting corresponding extension requirements.
- Recognizing the @gl_extension{NV,geometry_shader_passthrough} extension
- Added a @ref GL::AbstractTexture::target() getter to simplify interaction
with raw GL code
- Exposed @gl_extension{ARB,buffer_storage} as

2
doc/opengl-support.dox

@ -323,6 +323,7 @@ Extension | Status
@gl_extension{EXT,texture_sRGB_R8} | done
@gl_extension{EXT,texture_sRGB_RG8} | done
@gl_extension{GREMEDY,string_marker} | done
@gl_extension{NV,geometry_shader_passthrough} | done (shading language only)
@gl_extension{NV,sample_locations} | |
@gl_extension{NV,fragment_shader_barycentric} | done (shading language only)
@gl_extension{OVR,multiview} | |
@ -497,6 +498,7 @@ Extension | Status
@gl_extension{NV,read_depth_stencil} | done
@gl_extension{NV,texture_border_clamp} | done
@gl_extension{NV,shader_noperspective_interpolation} | done (shading language only)
@gl_extension{NV,geometry_shader_passthrough} | done (shading language only)
@gl_extension{NV,sample_locations} | |
@gl_extension{NV,polygon_mode} | done
@gl_extension{OES,depth32} | done

4
src/Magnum/GL/Context.cpp

@ -112,6 +112,7 @@ constexpr Extension ExtensionList[]{
Extensions::KHR::texture_compression_astc_sliced_3d{},
Extensions::NV::depth_buffer_float{},
Extensions::NV::fragment_shader_barycentric{},
Extensions::NV::geometry_shader_passthrough{},
Extensions::NV::sample_locations{},
Extensions::OVR::multiview{},
Extensions::OVR::multiview2{}
@ -415,6 +416,9 @@ constexpr Extension ExtensionList[]{
#ifndef MAGNUM_TARGET_GLES2
Extensions::NV::fragment_shader_barycentric{},
#endif
#ifndef MAGNUM_TARGET_GLES2
Extensions::NV::geometry_shader_passthrough{},
#endif
Extensions::NV::polygon_mode{},
Extensions::NV::read_buffer_front{},
Extensions::NV::read_depth{},

14
src/Magnum/GL/Extensions.h

@ -264,8 +264,9 @@ namespace AMD {
_extension(176,NV,depth_buffer_float, GL210, None) // #334
_extension(177,NV,conditional_render, GL210, GL300) // #346
/* NV_draw_texture not supported */ // #430
_extension(178,NV,sample_locations, GL210, None) // #472
_extension(179,NV,fragment_shader_barycentric, GL450, None) // #526
_extension(178,NV,geometry_shader_passthrough, GL330, None) // #470
_extension(179,NV,sample_locations, GL210, None) // #472
_extension(180,NV,fragment_shader_barycentric, GL450, None) // #526
} namespace OVR {
_extension(185,OVR,multiview, GL300, None) // #478
_extension(186,OVR,multiview2, GL300, None) // #479
@ -532,10 +533,13 @@ namespace ANDROID {
#ifndef MAGNUM_TARGET_GLES2
_extension(115,NV,shader_noperspective_interpolation, GLES300, None) // #201
#endif
_extension(116,NV,sample_locations, GLES200, None) // #235
_extension(117,NV,polygon_mode, GLES200, None) // #238
#ifndef MAGNUM_TARGET_GLES2
_extension(118,NV,fragment_shader_barycentric, GLES320, None) // #316
_extension(116,NV,geometry_shader_passthrough, GLES300, None) // #233
#endif
_extension(117,NV,sample_locations, GLES200, None) // #235
_extension(118,NV,polygon_mode, GLES200, None) // #238
#ifndef MAGNUM_TARGET_GLES2
_extension(119,NV,fragment_shader_barycentric, GLES320, None) // #316
#endif
} namespace OES {
#ifdef MAGNUM_TARGET_GLES2

Loading…
Cancel
Save