From 46c4c9acbe57f5909c0add310636b036372332ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Mon, 18 Oct 2021 17:13:50 +0200 Subject: [PATCH] doc: add a page aggregating OpenGL-ES- and WebGL-specific features. Thanks Google, for your careless fuckall way of creating private ANGLE extensions that then immediately get exposed to Chrome and Chrome only. Way to go!! --- doc/Doxyfile | 1 + doc/Doxyfile-mcss | 1 + doc/Doxyfile-public | 1 + doc/opengl.dox | 18 +++++++++++++++--- doc/portability.dox | 4 ++-- 5 files changed, 20 insertions(+), 5 deletions(-) diff --git a/doc/Doxyfile b/doc/Doxyfile index 77bbee5e6..f85ea94a4 100644 --- a/doc/Doxyfile +++ b/doc/Doxyfile @@ -297,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_gles_only=@xrefitem requires-gles-only \"OpenGL ES-only and WebGL-only\" \"OpenGL ES-only and WebGL-only functionality\"" \ "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\"" \ "requires_webgl_only=@xrefitem requires-webgl-only \"WebGL-only\" \"WebGL-only functionality\"" \ "webgl_extension{2}=\1_\2" \ diff --git a/doc/Doxyfile-mcss b/doc/Doxyfile-mcss index e17904ab1..f5ac3fe5f 100644 --- a/doc/Doxyfile-mcss +++ b/doc/Doxyfile-mcss @@ -54,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_gles_only=@xrefitem requires-gles-only \"OpenGL ES-only and WebGL-only\" \"OpenGL ES-only and WebGL-only functionality\"" \ "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\"" \ "requires_webgl_only=@xrefitem requires-webgl-only \"WebGL-only\" \"WebGL-only functionality\"" \ "webgl_extension{2}=@m_class{m-doc-external} \1_\2" \ diff --git a/doc/Doxyfile-public b/doc/Doxyfile-public index 7e0ff884b..cc2b0e4a9 100644 --- a/doc/Doxyfile-public +++ b/doc/Doxyfile-public @@ -50,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_gles_only=@xrefitem requires-gles-only \"OpenGL ES-only and WebGL-only\" \"OpenGL ES-only and WebGL-only functionality\"" \ "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\"" \ "requires_webgl_only=@xrefitem requires-webgl-only \"WebGL-only\" \"WebGL-only functionality\"" \ "webgl_extension{2}=@m_class{m-doc-external} \1_\2" \ diff --git a/doc/opengl.dox b/doc/opengl.dox index 55bed5c32..606a7f200 100644 --- a/doc/opengl.dox +++ b/doc/opengl.dox @@ -81,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-gles-only - @subpage requires-gles20-only - @subpage requires-webgl-only @@ -141,7 +142,7 @@ is supported on older Intel GPUs even if they are capable of OpenGL 2.1 only). The following symbols are not defined when targeting OpenGL ES or WebGL. -@see @ref MAGNUM_TARGET_GLES +@see @ref MAGNUM_TARGET_GLES, @ref requires-gles-only */ /** @page requires-gles30 Functionality requiring OpenGL ES 3.0 @@ -182,13 +183,23 @@ The following symbols are not defined when targeting WebGL. * @m_footernavigation */ +/** @page requires-gles-only OpenGL ES-only and WebGL-only functionality +@m_footernavigation + +The following symbols are not defined when targeting desktop OpenGL. + +@see @ref MAGNUM_TARGET_GLES2, @ref requires-gles20-only, + @ref requires-webgl-only +*/ + /** @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, @ref requires-webgl-only +@see @ref MAGNUM_TARGET_GLES2, @ref requires-gles-only, + @ref requires-webgl-only */ /** @page requires-webgl-only WebGL-only functionality @@ -197,5 +208,6 @@ or desktop OpenGL. The following symbols are not defined when targeting OpenGL ES or desktop OpenGL. -@see @ref MAGNUM_TARGET_WEBGL, @ref requires-gles20-only +@see @ref MAGNUM_TARGET_WEBGL, @ref requires-gles-only, + @ref requires-gles20-only */ diff --git a/doc/portability.dox b/doc/portability.dox index 22fb1d99d..7d488dfbf 100644 --- a/doc/portability.dox +++ b/doc/portability.dox @@ -51,8 +51,8 @@ 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-gles30, @ref requires-gles20-only and -@ref requires-webgl-only. +also @ref requires-gl, @ref requires-gles30, @ref requires-gles-only, +@ref requires-gles20-only and @ref requires-webgl-only. @section portability-compiler Compiler- and platform-specific code