diff --git a/src/AbstractShaderProgram.h b/src/AbstractShaderProgram.h index df2dd6ce6..9b14b8111 100644 --- a/src/AbstractShaderProgram.h +++ b/src/AbstractShaderProgram.h @@ -270,32 +270,29 @@ See @ref types for more information, only types with GLSL equivalent can be used @ref Magnum::Vector4i "Vector4i") or unsigned integer uniforms (i.e. @ref Magnum::UnsignedInt "UnsignedInt", @ref Magnum::Vector2ui "Vector2ui", @ref Magnum::Vector3ui "Vector3ui" and @ref Magnum::Vector4ui "Vector4ui"). -@requires_gles30 Integer attributes and unsigned integer uniforms are not - available in OpenGL ES 2.0. - @requires_gl40 %Extension @extension{ARB,gpu_shader_fp64} is required when using double uniforms (i.e. @ref Magnum::Double "Double", @ref Magnum::Vector2d "Vector2d", @ref Magnum::Vector3d "Vector3d", - @ref Magnum::Vector4d "Vector4d", @ref Magnum::Matrix2d "Matrix2d", - @ref Magnum::Matrix3d "Matrix3d", @ref Magnum::Matrix4d "Matrix4d", + @ref Magnum::Vector4d "Vector4d", @ref Magnum::Matrix2x2d "Matrix2x2d", + @ref Magnum::Matrix3x3d "Matrix3x3d", @ref Magnum::Matrix4x4d "Matrix4x4d", @ref Magnum::Matrix2x3d "Matrix2x3d", @ref Magnum::Matrix3x2d "Matrix3x2d", @ref Magnum::Matrix2x4d "Matrix2x4d", @ref Magnum::Matrix4x2d "Matrix4x2d", @ref Magnum::Matrix3x4d "Matrix3x4d" and @ref Magnum::Matrix4x3d "Matrix4x3d"). @requires_gl41 %Extension @extension{ARB,vertex_attrib_64bit} is required when using double attributes (i.e. @ref Magnum::Double "Double", @ref Magnum::Vector2d "Vector2d", @ref Magnum::Vector3d "Vector3d", - @ref Magnum::Vector4d "Vector4d", @ref Magnum::Matrix2d "Matrix2d", - @ref Magnum::Matrix3d "Matrix3d", @ref Magnum::Matrix4d "Matrix4d", + @ref Magnum::Vector4d "Vector4d", @ref Magnum::Matrix2x2d "Matrix2x2d", + @ref Magnum::Matrix3x3d "Matrix3x3d", @ref Magnum::Matrix4x4d "Matrix4x4d", @ref Magnum::Matrix2x3d "Matrix2x3d", @ref Magnum::Matrix3x2d "Matrix3x2d", @ref Magnum::Matrix2x4d "Matrix2x4d", @ref Magnum::Matrix4x2d "Matrix4x2d", @ref Magnum::Matrix3x4d "Matrix3x4d" and @ref Magnum::Matrix4x3d "Matrix4x3d"). -@requires_gl Double attributes and uniforms are not available in OpenGL ES. -@requires_gles30 Non-square matrix attributes and uniforms (i.e. - @ref Magnum::Matrix2x3 "Matrix2x3", @ref Magnum::Matrix3x2 "Matrix3x2", - @ref Magnum::Matrix2x4 "Matrix2x4", @ref Magnum::Matrix4x2d "Matrix4x2", - @ref Magnum::Matrix3x4 "Matrix3x4" and @ref Magnum::Matrix4x3 "Matrix4x3") - are not available in OpenGL ES 2.0. +@requires_gles30 Integer attributes, unsigned integer uniforms and non-square + matrix attributes and uniforms (i.e. @ref Magnum::Matrix2x3 "Matrix2x3", + @ref Magnum::Matrix3x2 "Matrix3x2", @ref Magnum::Matrix2x4 "Matrix2x4", + @ref Magnum::Matrix4x2d "Matrix4x2", @ref Magnum::Matrix3x4 "Matrix3x4" and + @ref Magnum::Matrix4x3 "Matrix4x3") are not available in OpenGL ES 2.0. +@requires_gl Double attributes and uniforms are not available in OpenGL ES. @section AbstractShaderProgram-performance-optimization Performance optimizations @@ -1158,7 +1155,7 @@ to floating-point shader inputs. In this case you may want to normalize the values (e.g. color components from 0-255 to 0.0f - 1.0f) -- see @ref DataOption::Normalize. Only some types are allowed as attribute types, see @ref AbstractShaderProgram-types -or TypeTraits::AttributeType for more information. +for more information. See @ref AbstractShaderProgram-subclassing for example usage in shaders and @ref Mesh-configuration for example usage when adding vertex buffers to mesh. @@ -1296,7 +1293,7 @@ template class AbstractShaderProgram::Attribute { * Normalize integer components. Only for float attribute types. * Default is to not normalize. */ - Normalize = 1 << 0 + Normalized = 1 << 0 }; #else typedef typename Implementation::Attribute::DataOption DataOption; diff --git a/src/Mesh.h b/src/Mesh.h index 893615125..f6dadbf7c 100644 --- a/src/Mesh.h +++ b/src/Mesh.h @@ -552,7 +552,6 @@ class MAGNUM_EXPORT Mesh: public AbstractObject { * @fn_gl_extension{EnableVertexArrayAttrib,EXT,direct_state_access}, * @fn_gl_extension{VertexArrayVertexAttribOffset,EXT,direct_state_access} * if @extension{APPLE,vertex_array_object} is available - * @todoc Add back the *s when Doxygen is sane again */ template inline Mesh& addVertexBuffer(Buffer& buffer, GLintptr offset, const T&... attributes) { addVertexBufferInternal(buffer, offset, strideOfInterleaved(attributes...), attributes...);