diff --git a/doc/Doxyfile b/doc/Doxyfile index c79591ffb..13be58108 100644 --- a/doc/Doxyfile +++ b/doc/Doxyfile @@ -290,7 +290,6 @@ ALIASES = \ "requires_gl=@xrefitem requires-gl \"Requires desktop OpenGL\" \"Functionality requiring desktop OpenGL\"" \ "gl_extension{2}=\1_\2" \ "gl_extension2{3}=\1_\2" \ - "requires_gles20=@xrefitem requires-gles20 \"Requires OpenGL ES 2.0 / WebGL 1.0\" \"Functionality requiring OpenGL ES 2.0 or WebGL 1.0\"" \ "requires_gles30=@xrefitem requires-gles30 \"Requires OpenGL ES 3.0\" \"Functionality requiring OpenGL ES 3.0\"" \ "requires_gles31=@xrefitem requires-gles31 \"Requires OpenGL ES 3.1\" \"Functionality requiring OpenGL ES 3.1\"" \ "requires_gles32=@xrefitem requires-gles32 \"Requires OpenGL ES 3.2\" \"Functionality requiring OpenGL ES 3.2\"" \ @@ -298,6 +297,7 @@ ALIASES = \ "requires_gles=@xrefitem requires-gles \"Requires OpenGL ES or desktop OpenGL\" \"Functionality requiring OpenGL ES or desktop OpenGL\"" \ "requires_webgl20=@xrefitem requires-webgl20 \"Requires WebGL 2.0\" \"Functionality requiring WebGL 2.0\"" \ "requires_webgl_extension=@xrefitem requires-webgl-extension \"Requires WebGL extension\" \"Functionality requiring specific WebGL extension\"" \ + "requires_gles20_only=@xrefitem requires-gles20-only \"OpenGL ES 2.0-only and WebGL 1.0-only\" \"OpenGL ES 2.0-only and WebGL 1.0-only functionality\"" \ "webgl_extension{2}=\1_\2" \ "fn_vk{1}=vk\1()" \ "type_vk{1}=Vk\1" \ diff --git a/doc/Doxyfile-mcss b/doc/Doxyfile-mcss index 752a3b74f..9fffeafc8 100644 --- a/doc/Doxyfile-mcss +++ b/doc/Doxyfile-mcss @@ -47,7 +47,6 @@ ALIASES = \ "requires_gl=@xrefitem requires-gl \"Requires desktop OpenGL\" \"Functionality requiring desktop OpenGL\"" \ "gl_extension{2}=@m_class{m-doc-external} \1_\2" \ "gl_extension2{3}=@m_class{m-doc-external} \1_\2" \ - "requires_gles20=@xrefitem requires-gles20 \"Requires OpenGL ES 2.0 / WebGL 1.0\" \"Functionality requiring OpenGL ES 2.0 or WebGL 1.0\"" \ "requires_gles30=@xrefitem requires-gles30 \"Requires OpenGL ES 3.0\" \"Functionality requiring OpenGL ES 3.0\"" \ "requires_gles31=@xrefitem requires-gles31 \"Requires OpenGL ES 3.1\" \"Functionality requiring OpenGL ES 3.1\"" \ "requires_gles32=@xrefitem requires-gles32 \"Requires OpenGL ES 3.2\" \"Functionality requiring OpenGL ES 3.2\"" \ @@ -55,6 +54,7 @@ ALIASES = \ "requires_gles=@xrefitem requires-gles \"Requires OpenGL ES or desktop OpenGL\" \"Functionality requiring OpenGL ES or desktop OpenGL\"" \ "requires_webgl20=@xrefitem requires-webgl20 \"Requires WebGL 2.0\" \"Functionality requiring WebGL 2.0\"" \ "requires_webgl_extension=@xrefitem requires-webgl-extension \"Requires WebGL extension\" \"Functionality requiring specific WebGL extension\"" \ + "requires_gles20_only=@xrefitem requires-gles20-only \"OpenGL ES 2.0-only and WebGL 1.0-only\" \"OpenGL ES 2.0-only and WebGL 1.0-only functionality\"" \ "webgl_extension{2}=@m_class{m-doc-external} \1_\2" \ "fn_vk{1}=@m_class{m-doc-external} vk\1()" \ "type_vk{1}=@m_class{m-doc-external} Vk\1" \ diff --git a/doc/Doxyfile-public b/doc/Doxyfile-public index c168917c8..d339d3d7d 100644 --- a/doc/Doxyfile-public +++ b/doc/Doxyfile-public @@ -43,7 +43,6 @@ ALIASES = \ "requires_gl=@xrefitem requires-gl \"Requires desktop OpenGL\" \"Functionality requiring desktop OpenGL\"" \ "gl_extension{2}=@m_class{m-doc-external} \1_\2" \ "gl_extension2{3}=@m_class{m-doc-external} \1_\2" \ - "requires_gles20=@xrefitem requires-gles20 \"Requires OpenGL ES 2.0 / WebGL 1.0\" \"Functionality requiring OpenGL ES 2.0 or WebGL 1.0\"" \ "requires_gles30=@xrefitem requires-gles30 \"Requires OpenGL ES 3.0\" \"Functionality requiring OpenGL ES 3.0\"" \ "requires_gles31=@xrefitem requires-gles31 \"Requires OpenGL ES 3.1\" \"Functionality requiring OpenGL ES 3.1\"" \ "requires_gles32=@xrefitem requires-gles32 \"Requires OpenGL ES 3.2\" \"Functionality requiring OpenGL ES 3.2\"" \ @@ -51,6 +50,7 @@ ALIASES = \ "requires_gles=@xrefitem requires-gles \"Requires OpenGL ES or desktop OpenGL\" \"Functionality requiring OpenGL ES or desktop OpenGL\"" \ "requires_webgl20=@xrefitem requires-webgl20 \"Requires WebGL 2.0\" \"Functionality requiring WebGL 2.0\"" \ "requires_webgl_extension=@xrefitem requires-webgl-extension \"Requires WebGL extension\" \"Functionality requiring specific WebGL extension\"" \ + "requires_gles20_only=@xrefitem requires-gles20-only \"OpenGL ES 2.0-only and WebGL 1.0-only\" \"OpenGL ES 2.0-only and WebGL 1.0-only functionality\"" \ "webgl_extension{2}=@m_class{m-doc-external} \1_\2" \ "fn_vk{1}=@m_class{m-doc-external} vk\1()" \ "type_vk{1}=@m_class{m-doc-external} Vk\1" \ diff --git a/doc/opengl.dox b/doc/opengl.dox index b38b4178b..8557c3d1c 100644 --- a/doc/opengl.dox +++ b/doc/opengl.dox @@ -74,7 +74,6 @@ is supported on older Intel GPUs even if they are capable of OpenGL 2.1 only). - @subpage requires-gl46 - @subpage requires-extension - @subpage requires-gl -- @subpage requires-gles20 - @subpage requires-gles30 - @subpage requires-gles31 - @subpage requires-gles32 @@ -82,6 +81,7 @@ is supported on older Intel GPUs even if they are capable of OpenGL 2.1 only). - @subpage requires-gles - @subpage requires-webgl20 - @subpage requires-webgl-extension +- @subpage requires-gles20-only @see @ref building, @ref cmake, @ref MAGNUM_TARGET_GLES, @ref MAGNUM_TARGET_GLES2 @@ -143,15 +143,6 @@ The following symbols are not defined when targeting OpenGL ES or WebGL. @see @ref MAGNUM_TARGET_GLES */ -/** @page requires-gles20 Functionality requiring OpenGL ES 2.0 or WebGL 1.0 -@m_footernavigation - -The following symbols are not defined when targeting OpenGL ES 3.0, WebGL 2.0 -or desktop OpenGL. - -@see @ref MAGNUM_TARGET_GLES2 -*/ - /** @page requires-gles30 Functionality requiring OpenGL ES 3.0 @m_footernavigation @@ -189,3 +180,12 @@ The following symbols are not defined when targeting WebGL. /** @page requires-webgl-extension Functionality requiring specific WebGL extension * @m_footernavigation */ + +/** @page requires-gles20-only OpenGL ES 2.0-only and WebGL 1.0-only functionality +@m_footernavigation + +The following symbols are not defined when targeting OpenGL ES 3.0, WebGL 2.0 +or desktop OpenGL. + +@see @ref MAGNUM_TARGET_GLES2 +*/ diff --git a/doc/portability.dox b/doc/portability.dox index d3a11837b..44fae06b2 100644 --- a/doc/portability.dox +++ b/doc/portability.dox @@ -51,7 +51,7 @@ Example usage: @snippet MagnumGL.cpp portability-targets Each feature is marked accordingly if it is not available in some targets. See -also @ref requires-gl, @ref requires-gles20 and @ref requires-gles30. +also @ref requires-gl, @ref requires-gles30 and @ref requires-gles20-only. @section portability-compiler Compiler- and platform-specific code diff --git a/src/Magnum/GL/Framebuffer.h b/src/Magnum/GL/Framebuffer.h index 01001d73a..e4200d52f 100644 --- a/src/Magnum/GL/Framebuffer.h +++ b/src/Magnum/GL/Framebuffer.h @@ -283,10 +283,10 @@ class MAGNUM_GL_EXPORT Framebuffer: public AbstractFramebuffer, public AbstractO #if defined(MAGNUM_TARGET_GLES2) || defined(DOXYGEN_GENERATING_OUTPUT) /** * The attached images have different sizes. - * @requires_gles20 This restriction is only present in OpenGL ES - * 2.0, not in desktop GL or OpenGL ES 3.0 anymore. Note that, - * however, NVidia desktop drivers are known to emit this - * value (@cpp 0x8CD9 @ce) in some cases. + * @requires_gles20_only This restriction is only present in OpenGL + * ES 2.0, not in desktop GL or OpenGL ES 3.0 anymore. Note + * that, however, NVidia desktop drivers are known to emit + * this value (@cpp 0x8CD9 @ce) in some cases. */ IncompleteDimensions = GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS, #endif diff --git a/src/Magnum/GL/PixelFormat.h b/src/Magnum/GL/PixelFormat.h index 46c631f82..7700ebd62 100644 --- a/src/Magnum/GL/PixelFormat.h +++ b/src/Magnum/GL/PixelFormat.h @@ -98,8 +98,8 @@ enum class PixelFormat: GLenum { /** * Floating-point luminance channel. The value is used for all RGB * channels. - * @requires_gles20 Not available in ES 3.0, WebGL 2.0 or desktop OpenGL. - * Use @ref PixelFormat::Red instead. + * @requires_gles20_only Not available in ES 3.0, WebGL 2.0 or desktop + * OpenGL. Use @ref PixelFormat::Red instead. * @deprecated_gl Included for compatibility reasons only, use * @ref PixelFormat::Red instead. */ @@ -128,8 +128,8 @@ enum class PixelFormat: GLenum { /** * Floating-point luminance and alpha channel. First value is used for all * RGB channels, second value is used for alpha channel. - * @requires_gles20 Not available in ES 3.0, WebGL 2.0 or desktop OpenGL. - * Use @ref PixelFormat::RG instead. + * @requires_gles20_only Not available in ES 3.0, WebGL 2.0 or desktop + * OpenGL. Use @ref PixelFormat::RG instead. * @deprecated_gl Included for compatibility reasons only, use * @ref PixelFormat::RG instead. */ @@ -178,8 +178,8 @@ enum class PixelFormat: GLenum { #if defined(MAGNUM_TARGET_GLES2) || defined(DOXYGEN_GENERATING_OUTPUT) /** * Floating-point sRGB. - * @requires_gles20 Not available in ES 3.0, WebGL 2.0 or desktop OpenGL. - * Use @ref PixelFormat::RGB instead. + * @requires_gles20_only Not available in ES 3.0, WebGL 2.0 or desktop + * OpenGL. Use @ref PixelFormat::RGB instead. * @deprecated_gl Included only in order to make it possible to upload * sRGB image data with the @gl_extension{EXT,sRGB} ES2 extension, use * @ref PixelFormat::RGB elsewhere instead. @@ -188,8 +188,8 @@ enum class PixelFormat: GLenum { /** * Floating-point sRGB + alpha. - * @requires_gles20 Not available in ES 3.0, WebGL 2.0 or desktop OpenGL. - * Use @ref PixelFormat::RGBA instead. + * @requires_gles20_only Not available in ES 3.0, WebGL 2.0 or desktop + * OpenGL. Use @ref PixelFormat::RGBA instead. * @deprecated_gl Included only in order to make it possible to upload * sRGB image data with the @gl_extension{EXT,sRGB} ES2 extension, use * @ref PixelFormat::RGBA elsewhere instead. diff --git a/src/Magnum/GL/TextureFormat.h b/src/Magnum/GL/TextureFormat.h index 623243ecf..3e34f77ca 100644 --- a/src/Magnum/GL/TextureFormat.h +++ b/src/Magnum/GL/TextureFormat.h @@ -921,8 +921,8 @@ enum class TextureFormat: GLenum { * Luminance, normalized unsigned, single value used for all RGB channels. * Size implementation-dependent. Not allowed in unemulated * @ref Texture::setStorage() "*Texture::setStorage()" calls. - * @requires_gles20 Not available in OpenGL ES 3.0, WebGL 2.0 or desktop - * OpenGL. Use @ref TextureFormat::R8 instead. + * @requires_gles20_only Not available in OpenGL ES 3.0, WebGL 2.0 or + * desktop OpenGL. Use @ref TextureFormat::R8 instead. * @deprecated_gl Included for compatibility reasons only, use * @ref TextureFormat::R8 instead. */ @@ -933,8 +933,8 @@ enum class TextureFormat: GLenum { * RGB channels, second value is used for alpha channel. Size * implementation-dependent. Not allowed in unemulated * @ref Texture::setStorage() "*Texture::setStorage()" calls. - * @requires_gles20 Not available in OpenGL ES 3.0, WebGL 2.0 or desktop - * OpenGL. Use @ref TextureFormat::RG8 instead. + * @requires_gles20_only Not available in OpenGL ES 3.0, WebGL 2.0 or + * desktop OpenGL. Use @ref TextureFormat::RG8 instead. * @deprecated_gl Included for compatibility reasons only, use * @ref TextureFormat::RG8 instead. */