From 638f96f099fe912bda9487f243d9c888a76f5228 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Mon, 6 Apr 2020 00:07:14 +0200 Subject: [PATCH] Shaders: be sure to list required extensions in generic attribs. Those aren't needed when the attributes are not used non-instanced, but that's extremely unlikely. --- src/Magnum/Shaders/Generic.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/Magnum/Shaders/Generic.h b/src/Magnum/Shaders/Generic.h index 0b496a24f..cb1e9f9a1 100644 --- a/src/Magnum/Shaders/Generic.h +++ b/src/Magnum/Shaders/Generic.h @@ -366,6 +366,12 @@ template struct Generic { * * @ref Magnum::Matrix3 "Matrix3" in 2D and @ref Magnum::Matrix4 "Matrix4" * in 3D. Currently doesn't have a corresponding @ref Trade::MeshAttribute. + * @requires_gl33 Extension @gl_extension{ARB,instanced_arrays} + * @requires_gles30 Extension @gl_extension{ANGLE,instanced_arrays}, + * @gl_extension{EXT,instanced_arrays} or + * @gl_extension{NV,instanced_arrays} in OpenGL ES 2.0. + * @requires_webgl20 Extension @webgl_extension{ANGLE,instanced_arrays} + * in WebGL 1.0. */ typedef GL::Attribute<8, T> TransformationMatrix; @@ -377,6 +383,12 @@ template struct Generic { * * @ref Magnum::Matrix3 "Matrix3x3", defined only in 3D. Currently doesn't * have a corresponding @ref Trade::MeshAttribute. + * @requires_gl33 Extension @gl_extension{ARB,instanced_arrays} + * @requires_gles30 Extension @gl_extension{ANGLE,instanced_arrays}, + * @gl_extension{EXT,instanced_arrays} or + * @gl_extension{NV,instanced_arrays} in OpenGL ES 2.0. + * @requires_webgl20 Extension @webgl_extension{ANGLE,instanced_arrays} + * in WebGL 1.0. */ typedef GL::Attribute<12, Matrix3x3> NormalMatrix; @@ -388,6 +400,12 @@ template struct Generic { * * @ref Magnum::Vector2 "Vector2". Currently doesn't have a corresponding * @ref Trade::MeshAttribute. + * @requires_gl33 Extension @gl_extension{ARB,instanced_arrays} + * @requires_gles30 Extension @gl_extension{ANGLE,instanced_arrays}, + * @gl_extension{EXT,instanced_arrays} or + * @gl_extension{NV,instanced_arrays} in OpenGL ES 2.0. + * @requires_webgl20 Extension @webgl_extension{ANGLE,instanced_arrays} + * in WebGL 1.0. */ typedef GL::Attribute<15, Vector2> TextureOffset;