Browse Source

doc: updated/removed references to deprecated APIs in changelogs.

For 2018.02 it's still referencing them, but the older changelogs are
simply converted to inline code for all references.
pull/233/head
Vladimír Vondruš 8 years ago
parent
commit
822ebd3426
  1. 223
      doc/changelog-old.dox
  2. 284
      doc/changelog.dox

223
doc/changelog-old.dox

@ -51,29 +51,29 @@ for a high-level overview.
- Support for @extension{ARB,direct_state_acccess} (OpenGL 4.5) - Support for @extension{ARB,direct_state_acccess} (OpenGL 4.5)
everywhere except in Mesh. everywhere except in Mesh.
- Support for @extension{ARB,conditional_render_inverted} (OpenGL - Support for @extension{ARB,conditional_render_inverted} (OpenGL
4.5) in @ref SampleQuery. 4.5) in @cpp SampleQuery @ce.
- Support for @extension{ARB,get_texture_sub_image} (OpenGL 4.5) in - Support for @extension{ARB,get_texture_sub_image} (OpenGL 4.5) in
@ref Texture::subImage() "*Texture::subImage()". @cpp *Texture::subImage() @ce.
- Support for @extension{EXT,transform_feedback}, - Support for @extension{EXT,transform_feedback},
@extension{ARB,transform_feedback2} (OpenGL 3.0, 4.0, OpenGL ES 3.0) in @extension{ARB,transform_feedback2} (OpenGL 3.0, 4.0, OpenGL ES 3.0) in
new @ref TransformFeedback class, added new @cpp TransformFeedback @ce class, added
@ref Renderer::Feature::RasterizerDiscard. @cpp Renderer::Feature::RasterizerDiscard @ce.
- Support for @extension{ARB,robustness_isolation} in - Support for @extension{ARB,robustness_isolation} in
@ref Renderer::graphicsResetStatus(). @cpp Renderer::graphicsResetStatus() @ce.
- Support for @extension{ARB,framebuffer_sRGB} (OpenGL 3.0) in - Support for @extension{ARB,framebuffer_sRGB} (OpenGL 3.0) in
@ref Renderer::Feature::FramebufferSRGB. @cpp Renderer::Feature::FramebufferSRGB @ce
- Support for @extension{OES,texture_npot} ES extension. - Support for @extension{OES,texture_npot} ES extension.
- Support for debug groups from @extension{KHR,debug} (OpenGL 4.5) and - Support for debug groups from @extension{KHR,debug} (OpenGL 4.5) and
@extension{EXT,debug_marker} extensions in @ref DebugGroup class. @extension{EXT,debug_marker} extensions in @cpp DebugGroup @ce class.
- Added @ref CubeMapTexture::image() "CubeMapTexture::*image()" that - Added @cpp CubeMapTexture::*image() @ce that returns all six faces
returns all six faces together. together.
- Added @ref Primitives::Cube::solidStrip(). - Added @cpp Primitives::Cube::solidStrip() @ce.
- Added @ref AbstractShaderProgram::attachShaders() as a list-based - Added @cpp AbstractShaderProgram::attachShaders() @ce as a list-based
complement to @ref Shader::compile() and complement to @cpp Shader::compile() @ce and
@ref AbstractShaderProgram::link(). @cpp AbstractShaderProgram::link() @ce.
- Separated @cpp Renderer::setFeature() @ce into shorter - Separated @cpp Renderer::setFeature() @ce into shorter
@ref Renderer::enable() and @ref Renderer::disable(). @cpp Renderer::enable() @ce and @cpp Renderer::disable() @ce.
- Added @cpp tau() @ce, @cpp piHalf() @ce, @cpp e() @ce, @cpp nan() @ce and - Added @cpp tau() @ce, @cpp piHalf() @ce, @cpp e() @ce, @cpp nan() @ce and
@cpp inf() @ce to @ref Math::Constants. @cpp inf() @ce to @ref Math::Constants.
- Added @ref Math::Matrix4::shearingXY() "Math::Matrix[34]::shearing*()". - Added @ref Math::Matrix4::shearingXY() "Math::Matrix[34]::shearing*()".
@ -82,12 +82,12 @@ for a high-level overview.
- Added @ref Math::div(). - Added @ref Math::div().
- Using range-based-for to traverse object children and features in - Using range-based-for to traverse object children and features in
@ref SceneGraph and screens in @ref Platform::BasicScreenedApplication "Platform::ScreenedApplication". @ref SceneGraph and screens in @ref Platform::BasicScreenedApplication "Platform::ScreenedApplication".
- Convenience overload for @ref Framebuffer::read() "*Framebuffer::read()" - Convenience overload for @cpp *Framebuffer::read() @ce and
and @ref Texture::image() "*Texture::image()" that returns the queried @cpp *Texture::image() @ce that returns the queried image by value instead
image by value instead of as parameter. of as parameter.
- Added @ref Buffer::uniformOffsetAlignment() and - Added @cpp Buffer::uniformOffsetAlignment() @ce and @cpp Mesh::maxElementIndex() @ce
@ref Mesh::maxElementIndex() limit queries. limit queries.
- Added @ref AbstractTexture::unbind() for unbinding range of texture - Added @cpp AbstractTexture::unbind() @ce for unbinding range of texture
units. units.
- Added @ref SceneGraph::AbstractObject::addFeature() and - Added @ref SceneGraph::AbstractObject::addFeature() and
@ref SceneGraph::Object::addChild() functions (see [mosra/magnum#86](https://github.com/mosra/magnum/issues/86)). @ref SceneGraph::Object::addChild() functions (see [mosra/magnum#86](https://github.com/mosra/magnum/issues/86)).
@ -103,8 +103,8 @@ for a high-level overview.
for OpenGL extension loading for OpenGL extension loading
- @ref Platform::Sdl2Application now tries to create core context on all - @ref Platform::Sdl2Application now tries to create core context on all
platforms, not just OSX (see [mosra/magnum#80](https://github.com/mosra/magnum/issues/80)). platforms, not just OSX (see [mosra/magnum#80](https://github.com/mosra/magnum/issues/80)).
- @ref Buffer::bind(), @ref Buffer::unbind() and @ref Buffer::Target is - @cpp Buffer::bind() @ce, @cpp Buffer::unbind() @ce and @cpp Buffer::Target @ce
now used for indexed buffer binding only. is now used for indexed buffer binding only.
- Moved static binary operations from @ref Math classes into free functions - Moved static binary operations from @ref Math classes into free functions
for more convenient usage (see [mosra/magnum#74](https://github.com/mosra/magnum/issues/74)). for more convenient usage (see [mosra/magnum#74](https://github.com/mosra/magnum/issues/74)).
- Better algorithm for comparing floating-point values. - Better algorithm for comparing floating-point values.
@ -148,9 +148,9 @@ for a high-level overview.
- Properly handle case where - Properly handle case where
@fn_gl_extension{VertexArrayVertexAttribDivisor,EXT,direct_state_access} is @fn_gl_extension{VertexArrayVertexAttribDivisor,EXT,direct_state_access} is
not available in the driver (see [mosra/magnum#77](https://github.com/mosra/magnum/issues/77)). not available in the driver (see [mosra/magnum#77](https://github.com/mosra/magnum/issues/77)).
- Removed superfluous level argument from @ref Framebuffer::attachTexture() "Framebuffer::attachTexture*()" - Removed superfluous level argument from @cpp Framebuffer::attachTexture*() @ce
overloads for texture types that don't support mipmapping. overloads for texture types that don't support mipmapping.
- Proper no-op fallback for @ref Framebuffer::invalidate() "*Framebuffer::invalidate()" - Proper no-op fallback for @cpp *Framebuffer::invalidate() @ce
on platforms where the extensions is not supported (see on platforms where the extensions is not supported (see
[mosra/magnum#63](https://github.com/mosra/magnum/issues/63)). [mosra/magnum#63](https://github.com/mosra/magnum/issues/63)).
- Fixed garbage characters in shader compilation output (see - Fixed garbage characters in shader compilation output (see
@ -165,18 +165,18 @@ for a high-level overview.
- Fixed bogus version check in @ref Platform::WindowlessCglApplication (see - Fixed bogus version check in @ref Platform::WindowlessCglApplication (see
[mosra/magnum#92](https://github.com/mosra/magnum/issues/92)) [mosra/magnum#92](https://github.com/mosra/magnum/issues/92))
- Fixed matrix to quaternion conversion algorithm. - Fixed matrix to quaternion conversion algorithm.
- Two different headers in @ref Magnum::Primitives had the same include guard - Two different headers in @ref Primitives had the same include guard by
by accident (see [mosra/magnum#72](https://github.com/mosra/magnum/issues/53)) accident (see [mosra/magnum#72](https://github.com/mosra/magnum/issues/53))
- Various compilation fixes on various platforms (see - Various compilation fixes on various platforms (see
[mosra/magnum#71](https://github.com/mosra/magnum/pull/71)) [mosra/magnum#71](https://github.com/mosra/magnum/pull/71))
@subsection changelog-2015-05-deprecated Deprecated APIs @subsection changelog-2015-05-deprecated Deprecated APIs
- The `Magnum/Query.h` header is deprecated, use one of - The `Magnum/Query.h` header is deprecated, use one of
@ref Magnum/PrimitiveQuery.h, @ref Magnum/SampleQuery.h or `Magnum/PrimitiveQuery.h`, `Magnum/SampleQuery.h` or
@ref Magnum/TimeQuery.h instead. `Magnum/TimeQuery.h` instead.
- Using @ref Buffer::Target as constructor or @ref Buffer::setTargetHint() - Using @cpp Buffer::Target @ce as constructor or @cpp Buffer::setTargetHint() @ce
parameter is deprecated, use @ref Buffer::TargetHint instead. parameter is deprecated, use @cpp Buffer::TargetHint @ce instead.
- The @cpp SceneGraph::TransformationType @ce enum is depracted, use separate - The @cpp SceneGraph::TransformationType @ce enum is depracted, use separate
`<transform>()` and `<transform>Local()` variants instead. `<transform>()` and `<transform>Local()` variants instead.
- @cpp SceneGraph::AbstractObject::hasFeatures() @ce, @cpp firstFeature() @ce, - @cpp SceneGraph::AbstractObject::hasFeatures() @ce, @cpp firstFeature() @ce,
@ -189,10 +189,10 @@ for a high-level overview.
methods on linked list returned by methods on linked list returned by
@ref Platform::BasicScreenedApplication::screens() "Platform::ScreenedApplication::screens()" @ref Platform::BasicScreenedApplication::screens() "Platform::ScreenedApplication::screens()"
instead. instead.
- @ref Framebuffer::read() "*Framebuffer::read()" functions taking two - @cpp *Framebuffer::read() @ce functions taking two vectors are deprecated,
vectors are deprecated, use overload taking @ref Range2Di instead. use overload taking @ref Range2Di instead.
- The @cpp Mesh::maxVertexAttributes() @ce function is deprecated, use - The @cpp Mesh::maxVertexAttributes() @ce function is deprecated, use
@ref AbstractShaderProgram::maxVertexAttributes() instead. @cpp AbstractShaderProgram::maxVertexAttributes() @ce instead.
- @cpp Math::Vector::dot() @ce, @cpp Math::Complex::dot() @ce, - @cpp Math::Vector::dot() @ce, @cpp Math::Complex::dot() @ce,
@cpp Math::Quaternion::dot() @ce, @cpp Math::Vector::angle() @ce, @cpp Math::Quaternion::dot() @ce, @cpp Math::Vector::angle() @ce,
@cpp Math::Complex::angle() @ce, @cpp Math::Quaternion::angle() @ce, @cpp Math::Complex::angle() @ce, @cpp Math::Quaternion::angle() @ce,
@ -202,33 +202,32 @@ for a high-level overview.
@ref Math::lerp(), @ref Math::slerp() and @ref Math::cross() instead (see @ref Math::lerp(), @ref Math::slerp() and @ref Math::cross() instead (see
[mosra/magnum#74](https://github.com/mosra/magnum/issues/74)) [mosra/magnum#74](https://github.com/mosra/magnum/issues/74))
- The @cpp *Framebuffer::bind(FramebufferTarget) @ce function is deprecated, - The @cpp *Framebuffer::bind(FramebufferTarget) @ce function is deprecated,
use parameter-less @ref Framebuffer::bind() "*Framebuffer::bind()" use parameter-less @cpp *Framebuffer::bind() @ce instead.
instead.
- The @cpp FramebufferTarget::ReadDraw @ce enum value is deprecated, use - The @cpp FramebufferTarget::ReadDraw @ce enum value is deprecated, use
separate @cpp FramebufferTarget::Read @ce and @cpp FramebufferTarget::Draw @ce separate @cpp FramebufferTarget::Read @ce and @cpp FramebufferTarget::Draw @ce
values instead. values instead.
- @ref CubeMapTexture::imageSize() with explicit face parameter is - @cpp CubeMapTexture::imageSize() @ce with explicit face parameter is
deprecated, use overload that returns one value for all faces instead. deprecated, use overload that returns one value for all faces instead.
- The `Magnum/DebugMessage.h` header is deprecated, use - The `Magnum/DebugMessage.h` header is deprecated, use
@ref Magnum/DebugOutput.h instead (see [mosra/magnum#89](https://github.com/mosra/magnum/pull/89)) `Magnum/DebugOutput.h` instead (see
[mosra/magnum#89](https://github.com/mosra/magnum/pull/89))
- The @cpp DebugMessage::Severity @ce enum is deprecated, use - The @cpp DebugMessage::Severity @ce enum is deprecated, use
@ref DebugOutput::Severity instead. @cpp DebugOutput::Severity @ce instead.
- The @cpp DebugMessage::Callback @ce typedef, @cpp DebugMessage::setCallback() @ce - The @cpp DebugMessage::Callback @ce typedef, @cpp DebugMessage::setCallback() @ce
and @cpp DebugMessage::setDefaultCallback() @ce function is deprecated, use and @cpp DebugMessage::setDefaultCallback() @ce function is deprecated, use
@ref DebugOutput::Callback, @ref DebugOutput::setCallback() and @cpp DebugOutput::Callback @ce, @cpp DebugOutput::setCallback() @ce and
@ref DebugOutput::setDefaultCallback() instead. @cpp DebugOutput::setDefaultCallback() @ce instead.
- The @cpp DebugMessage::maxLoggedMessages() @ce and - The @cpp DebugMessage::maxLoggedMessages() @ce and
@cpp DebugMessage::maxMessageLength() @ce functions are deprecated, use @cpp DebugMessage::maxMessageLength() @ce functions are deprecated, use
@ref DebugOutput::maxLoggedMessages() and @cpp DebugOutput::maxLoggedMessages() @ce and
@ref DebugOutput::maxMessageLength() instead. @cpp DebugOutput::maxMessageLength() @ce instead.
- The @cpp DebugMessage::setEnabled() @ce function and related values from - The @cpp DebugMessage::setEnabled() @ce function and related values from
@cpp DebugMessage::Source @ce enum are deprecated, use @cpp DebugMessage::Source @ce enum are deprecated, use
@ref DebugOutput::setEnabled() along with @ref DebugOutput::Source, @cpp DebugOutput::setEnabled() @ce along with @cpp DebugOutput::Source @ce,
@ref DebugOutput::Type and @ref DebugOutput::Severity instead. @cpp DebugOutput::Type @ce and @cpp DebugOutput::Severity @ce instead.
- Parameter-less @cpp *Query @ce constructor and parametrized - Parameter-less @cpp *Query @ce constructor and parametrized
@cpp *Query::begin() @ce function are deprecated, use constructor with @cpp *Query::begin() @ce function are deprecated, use constructor with
parameter and parameter-less @ref Query::begin() "*Query::begin()" parameter and parameter-less @cpp *Query::begin() @ce instead.
instead.
@subsection changelog-2015-05-compatibility Potential compatibility breakages, removed APIs @subsection changelog-2015-05-compatibility Potential compatibility breakages, removed APIs
@ -237,10 +236,10 @@ for a high-level overview.
- Removed deprecated ability to use relative includes (e.g. - Removed deprecated ability to use relative includes (e.g.
@cpp #include <Mesh.h> @ce), use absolute paths (@cpp #include <Magnum/Mesh.h> @ce) @cpp #include <Mesh.h> @ce), use absolute paths (@cpp #include <Magnum/Mesh.h> @ce)
instead. instead.
- Removed deprecated @cpp Mesh::Primitive @ce enum, use @ref MeshPrimitive - Removed deprecated @cpp Mesh::Primitive @ce enum, use @cpp MeshPrimitive @ce
instead. instead.
- Removed deprecated @cpp Sampler::maxAnisotropy() @ce function, use - Removed deprecated @cpp Sampler::maxAnisotropy() @ce function, use
@ref Sampler::maxMaxAnisotropy() instead. @cpp Sampler::maxMaxAnisotropy() @ce instead.
- Removed deprecated @cpp Math::Geometry::Rectangle @ce class, use - Removed deprecated @cpp Math::Geometry::Rectangle @ce class, use
@ref Math::Range instead. @ref Math::Range instead.
- Removed deprecated @cpp SceneGraph::Animable::group() @ce function, use - Removed deprecated @cpp SceneGraph::Animable::group() @ce function, use
@ -249,8 +248,8 @@ for a high-level overview.
`Shaders/resourceImport.hpp` instead. `Shaders/resourceImport.hpp` instead.
- Removed deprecated @cpp Text::TextRenderer @ce alias, use - Removed deprecated @cpp Text::TextRenderer @ce alias, use
@ref Text::Renderer instead. @ref Text::Renderer instead.
- Removed long-deprecated @ref BufferImage::setData() overload, use the - Removed long-deprecated @cpp BufferImage::setData() @ce overload, use
other one instead. the other one instead.
@subsection changelog-2015-05-performance Performance improvements @subsection changelog-2015-05-performance Performance improvements
@ -277,7 +276,7 @@ for a high-level overview.
for more information for more information
- Initial implementation of @ref Platform::AndroidApplication class - Initial implementation of @ref Platform::AndroidApplication class
- @ref Platform::WindowlessWglApplication and @ref Platform::WindowlessCglApplication, - @ref Platform::WindowlessWglApplication and @ref Platform::WindowlessCglApplication,
which enable @ref magnum-info "magnum-info", @ref magnum-distancefieldconverter which enable @ref magnum-gl-info "magnum-info", @ref magnum-distancefieldconverter
and @ref magnum-fontconverter utilities on OS X and Windows. See and @ref magnum-fontconverter utilities on OS X and Windows. See
[mosra/magnum#40](https://github.com/mosra/magnum/issues/40) and [mosra/magnum#40](https://github.com/mosra/magnum/issues/40) and
[mosra/magnum#59](https://github.com/mosra/magnum/pull/59). [mosra/magnum#59](https://github.com/mosra/magnum/pull/59).
@ -287,21 +286,21 @@ for a high-level overview.
@extension{ARB,stencil_texturing}, @extension{ARB,texture_rectangle}, @extension{ARB,stencil_texturing}, @extension{ARB,texture_rectangle},
@extension{ARB,texture_buffer_object}, @extension{ARB,texture_swizzle}, @extension{ARB,texture_buffer_object}, @extension{ARB,texture_swizzle},
@extension{EXT,texture_sRGB_decode} extensions (and related ES extensions) and @extension{EXT,texture_sRGB_decode} extensions (and related ES extensions) and
other missing parameters in @ref Texture "*Texture" classes other missing parameters in @cpp *Texture @ce classes
- Basic support for @extension{ARB,texture_multisample} and - Basic support for @extension{ARB,texture_multisample} and
@extension{ARB,texture_storage_multisample} in new @ref MultisampleTexture @extension{ARB,texture_storage_multisample} in new @cpp MultisampleTexture @ce
class class
- Instanced rendering, base vertex and base instance specification in - Instanced rendering, base vertex and base instance specification in
@ref Mesh and @ref MeshView classes; @ref Mesh::addVertexBufferInstanced() @cpp Mesh @ce and @cpp MeshView @ce classes; @cpp Mesh::addVertexBufferInstanced() @ce
function for adding buffers with per-instance data (see function for adding buffers with per-instance data (see
[mosra/magnum#47](https://github.com/mosra/magnum/issues/47)) [mosra/magnum#47](https://github.com/mosra/magnum/issues/47))
- Mesh multi-draw using @ref MeshView::draw() - Mesh multi-draw using @cpp MeshView::draw() @ce
- Initial @extension{ARB,multi_bind} support with @ref AbstractTexture::bind() - Initial @extension{ARB,multi_bind} support with @cpp AbstractTexture::bind() @ce
- Support for @extension{ARB,vertex_type_10f_11f_11f_rev} in - Support for @extension{ARB,vertex_type_10f_11f_11f_rev} in
@cpp AbstractShaderProgram::Attribute::DataType @ce @cpp AbstractShaderProgram::Attribute::DataType @ce
- New variants of @ref Shader::compile() and @ref AbstractShaderProgram::link(), - New variants of @cpp Shader::compile() @ce and @cpp AbstractShaderProgram::link() @ce,
allowing the driver to perform paralell compilation in multiple threads. allowing the driver to perform paralell compilation in multiple threads.
- Added @ref Texture::maxSize() "*Texture::maxSize()" queries - Added @cpp *Texture::maxSize() @ce queries
- @ref MeshTools::compile() for automagic creation of 2D and 3D meshes from - @ref MeshTools::compile() for automagic creation of 2D and 3D meshes from
imported data imported data
- @ref MeshTools::interleaveInto() for interleaving data into existing - @ref MeshTools::interleaveInto() for interleaving data into existing
@ -314,15 +313,15 @@ for a high-level overview.
GL GL
- Support for specifying context flags using - Support for specifying context flags using
@ref Platform::Sdl2Application::Configuration::setFlags() "Platform::*Application::Configuration::setFlags()", @ref Platform::Sdl2Application::Configuration::setFlags() "Platform::*Application::Configuration::setFlags()",
they are now also shown in @ref magnum-info "magnum-info" they are now also shown in @ref magnum-gl-info "magnum-info"
- More robust support for driver detection and driver bug workarounds. Driver - More robust support for driver detection and driver bug workarounds. Driver
can be detected using @ref Context::detectedDriver(), problematic can be detected using @cpp Context::detectedDriver() @ce, problematic
extension disabled, which is then shown in @ref magnum-info "magnum-info" extension disabled, which is then shown in @ref magnum-gl-info "magnum-info"
and can be also queried using @ref Context::isExtensionDisabled() and can be also queried using @cpp Context::isExtensionDisabled() @ce
- @ref Context::extensionStrings() for getting list of all extension - @cpp Context::extensionStrings() @ce for getting list of all extension
strings exposed by the driver strings exposed by the driver
- @ref Context::resetState() for resetting internal state tracker, allowing - @cpp Context::resetState() @ce for resetting internal state tracker,
to use Magnum along with third-party OpenGL code (see allowing to use Magnum along with third-party OpenGL code (see
[mosra/magnum#48](https://github.com/mosra/magnum/issues/48)) [mosra/magnum#48](https://github.com/mosra/magnum/issues/48))
- @ref MAGNUM_TARGET_WEBGL CMake and preprocessor variable - @ref MAGNUM_TARGET_WEBGL CMake and preprocessor variable
@ -339,11 +338,11 @@ for a high-level overview.
[mosra/magnum#39](https://github.com/mosra/magnum/issues/39). [mosra/magnum#39](https://github.com/mosra/magnum/issues/39).
- The need for compiler compatibility mode is now automatically detected by - The need for compiler compatibility mode is now automatically detected by
CMake to avoid strange compilation errors later CMake to avoid strange compilation errors later
- Split out @ref Texture functionality into dedicated @ref TextureArray, - Split out @cpp Texture @ce functionality into dedicated @cpp TextureArray @ce,
@ref MultisampleTexture and @ref RectangleTexture classes to make their @cpp MultisampleTexture @ce and @cpp RectangleTexture @ce classes to make
usage less error-prone their usage less error-prone
- @ref Buffer::invalidateData(), @ref Buffer::invalidateSubData() and - @cpp Buffer::invalidateData() @ce, @cpp Buffer::invalidateSubData() @ce and
@ref Renderer::resetNotificationStrategy() functions are enabled on @cpp Renderer::resetNotificationStrategy() @ce functions are enabled on
OpenGL ES as a no-op OpenGL ES as a no-op
- Added @ref std::vector overload of @ref MeshTools::combineIndexArrays() - Added @ref std::vector overload of @ref MeshTools::combineIndexArrays()
for greater runtime-usage flexibility for greater runtime-usage flexibility
@ -372,51 +371,51 @@ for a high-level overview.
- @cpp Mesh::setVertexCount() @ce and @cpp Mesh::setIndexCount() @ce had - @cpp Mesh::setVertexCount() @ce and @cpp Mesh::setIndexCount() @ce had
nonintuitive behavior in some corner cases and are deprecated, use general nonintuitive behavior in some corner cases and are deprecated, use general
@ref Mesh::setCount() function instead @cpp Mesh::setCount() @ce function instead
- @cpp MeshView::setVertexRange() @ce and four-/two-argument - @cpp MeshView::setVertexRange() @ce and four-/two-argument
@cpp MeshView::setIndexRange() @ce are deprecated for similar reason as @cpp MeshView::setIndexRange() @ce are deprecated for similar reason as
above, use @ref MeshView::setCount(), @ref MeshView::setBaseVertex() above, use @cpp MeshView::setCount() @ce, @cpp MeshView::setBaseVertex() @ce
and three-/one-argument @ref MeshView::setIndexRange() instead and three-/one-argument @cpp MeshView::setIndexRange() @ce instead
- @cpp Texture::Target @ce enum is deprecated as the API was too error-prone, - @cpp Texture::Target @ce enum is deprecated as the API was too error-prone,
use dedicated @ref TextureArray, @ref MultisampleTexture and use dedicated @cpp TextureArray @ce, @cpp MultisampleTexture @ce and
@ref RectangleTexture classes instead @cpp RectangleTexture @ce classes instead
- @cpp Framebuffer::attachTexture*D() @ce is deprecated, use more generic - @cpp Framebuffer::attachTexture*D() @ce is deprecated, use more generic
@ref Framebuffer::attachTexture() and @cpp Framebuffer::attachTexture() @ce and
@ref Framebuffer::attachTextureLayer() instead @cpp Framebuffer::attachTextureLayer() @ce instead
- @cpp FramebufferBlit::*Buffer @ce enum values are deprecated, use shorter - @cpp FramebufferBlit::*Buffer @ce enum values are deprecated, use shorter
@ref FramebufferBlit::Color and similar instead @cpp FramebufferBlit::Color @ce and similar instead
- @ref Audio::Source::play(), @ref SceneGraph::AbstractObject::setClean(), - @ref Audio::Source::play(), @ref SceneGraph::AbstractObject::setClean(),
@ref SceneGraph::AbstractObject::transformationMatrices() and similar @ref SceneGraph::AbstractObject::transformationMatrices() and similar
taking @ref std::initializer_list of pointers are deprecated, use versions taking @ref std::initializer_list of pointers are deprecated, use versions
taking list of references instead taking list of references instead
- @ref MeshTools::compressIndices() and @ref MeshTools::interleave() - @ref MeshTools::compressIndices() and @ref MeshTools::interleave()
which filled @ref Mesh and @ref Buffer directly are deprecated as they which filled @cpp Mesh @ce and @cpp Buffer @ce directly are deprecated as
had undesired side-effects in some cases, use the data-returning versions they had undesired side-effects in some cases, use the data-returning
instead and then configure mesh and buffer manually versions instead and then configure mesh and buffer manually
- @ref MeshTools::combineIndexedArrays() taking @ref std::tuple is - @ref MeshTools::combineIndexedArrays() taking @ref std::tuple is
deprecated, use version taking @ref std::pair instead deprecated, use version taking @ref std::pair instead
- @ref MeshTools::removeDuplicates() taking also list of indices is - @ref MeshTools::removeDuplicates() taking also list of indices is
deprecated, use the function in conjunction with @ref MeshTools::duplicate(). deprecated, use the function in conjunction with @ref MeshTools::duplicate().
See function documentation for more information. See function documentation for more information.
- Parameter-less @ref Mesh::draw() and @ref MeshView::draw() are - Parameter-less @cpp Mesh::draw() @ce and @cpp MeshView::draw() @ce are
deprecated, use versions with explicit shader parameter instead deprecated, use versions with explicit shader parameter instead
- Deprecated implicit conversion of @ref Resource "Resource<T, U>" to - Deprecated implicit conversion of @ref Resource "Resource<T, U>" to
@cpp U& @ce, as it is not safe. Use explicit dereference operator instead. @cpp U& @ce, as it is not safe. Use explicit dereference operator instead.
- Texture binding using @ref Texture::bind() "*Texture::bind()" is - Texture binding using @cpp *Texture::bind() @ce is deprecated, use setup
deprecated, use setup functions of particular shaders instead (e.g. functions of particular shaders instead (e.g.
@ref Shaders::Phong::setDiffuseTexture()) @cpp Shaders::Phong::setDiffuseTexture() @ce)
- @cpp Context::Flag::Robustness @ce is deprecated, use - @cpp Context::Flag::Robustness @ce is deprecated, use
@ref Context::Flag::RobustAccess which reflects OpenGL naming better @cpp Context::Flag::RobustAccess @ce which reflects OpenGL naming better
instead instead
- @cpp Texture::maxLayers() @ce has misleading naming and is deprecated, use - @cpp Texture::maxLayers() @ce has misleading naming and is deprecated, use
@ref Shader::maxCombinedTextureImageUnits() instead @cpp Shader::maxCombinedTextureImageUnits() @ce instead
@subsection changelog-2014-06-compatibility Potential compatibility breakages, removed APIs @subsection changelog-2014-06-compatibility Potential compatibility breakages, removed APIs
- All functionality @ref changelog-2013-10-deprecated "deprecated in 2013.10" - All functionality @ref changelog-2013-10-deprecated "deprecated in 2013.10"
has been removed, namely: has been removed, namely:
- Removed deprecated raw-pointer versions of @ref Buffer::setData() and - Removed deprecated raw-pointer versions of @cpp Buffer::setData() @ce
@ref Buffer::setSubData(), use overloads taking and @cpp Buffer::setSubData() @ce, use overloads taking
@cpp Containers::ArrayReference @ce instead @cpp Containers::ArrayReference @ce instead
- Removed deprecated `Magnum/ImageFormat.h` header and - Removed deprecated `Magnum/ImageFormat.h` header and
@cpp ImageFormat @ce/@cpp ImageType @ce enums, use `Magnum/ColorFormat.h` @cpp ImageFormat @ce/@cpp ImageType @ce enums, use `Magnum/ColorFormat.h`
@ -482,8 +481,8 @@ No dependency changes in this release.
@cpp magenta() @ce and @cpp yellow() @ce convenience functions to @ref Color3 @cpp magenta() @ce and @cpp yellow() @ce convenience functions to @ref Color3
and @ref Color4 classes and @ref Color4 classes
- Convenience @ref Color3ub and @ref Color4ub typedefs - Convenience @ref Color3ub and @ref Color4ub typedefs
- New @ref version() utility functions for converting @ref Version enum - New @cpp version() @ce utility functions for converting @cpp Version @ce
value to major/minor version number and back enum value to major/minor version number and back
- Added @cpp release() @ce function to @ref Image and @ref Trade::ImageData - Added @cpp release() @ce function to @ref Image and @ref Trade::ImageData
for releasing ownership of the data, similar to @ref std::unique_ptr::release() for releasing ownership of the data, similar to @ref std::unique_ptr::release()
(see [mosra/magnum#29](https://github.com/mosra/magnum/issues/29)) (see [mosra/magnum#29](https://github.com/mosra/magnum/issues/29))
@ -492,8 +491,8 @@ No dependency changes in this release.
- Disallowing conversion of rvalue @ref Image and @ref Trade::ImageData - Disallowing conversion of rvalue @ref Image and @ref Trade::ImageData
to ImageReference as it would result in access to deleted memory (GCC to ImageReference as it would result in access to deleted memory (GCC
4.8.1/Clang only) 4.8.1/Clang only)
- No-op fallback for @ref Texture::setMaxAnisotropy() "*Texture::setMaxAnisotropy()" - No-op fallback for @cpp *Texture::setMaxAnisotropy() @ce in case
in case @extension{EXT,texture_filter_anisotropic extension} is not supported @extension{EXT,texture_filter_anisotropic extension} is not supported
- Added @cpp round() @ce, @cpp floor() @ce and @cpp ceil() @ce scalar/vector - Added @cpp round() @ce, @cpp floor() @ce and @cpp ceil() @ce scalar/vector
functions to @ref Math namespace functions to @ref Math namespace
- @ref Math::minmax() and @ref Math::Vector2::minmax() functions - @ref Math::minmax() and @ref Math::Vector2::minmax() functions
@ -516,7 +515,7 @@ No dependency changes in this release.
@ref Trade::MeshData2D and @ref Trade::MeshData3D @ref Trade::MeshData2D and @ref Trade::MeshData3D
- OpenGL ES 3.0 build now shares list of vendor extensions with OpenGL ES 2.0 - OpenGL ES 3.0 build now shares list of vendor extensions with OpenGL ES 2.0
build (i.e. only those extensions that aren't part of ES 3.0 are present in build (i.e. only those extensions that aren't part of ES 3.0 are present in
@ref Magnum::Extensions) @cpp Extensions @ce)
- All classes in documentation are now shown with corresponding @cpp #include @ce - All classes in documentation are now shown with corresponding @cpp #include @ce
path path
@ -528,7 +527,7 @@ No dependency changes in this release.
- @cpp ImageReference @ce class now stores const data pointer instead of - @cpp ImageReference @ce class now stores const data pointer instead of
mutable one, modifying the data through the class interface isn't valid use mutable one, modifying the data through the class interface isn't valid use
case anyway case anyway
- Added default template parameter to @ref Buffer::data() and made - Added default template parameter to @cpp Buffer::data() @ce and made
@ref Image::data() "*Image::data()" templated to have them consistent. @ref Image::data() "*Image::data()" templated to have them consistent.
Note that this is source-compatible change. Note that this is source-compatible change.
- @cpp Query::result<bool>() @ce returns @cpp true @ce if value is nonzero - @cpp Query::result<bool>() @ce returns @cpp true @ce if value is nonzero
@ -549,15 +548,15 @@ No dependency changes in this release.
@subsection changelog-2014-01-bugfixes Bug fixes @subsection changelog-2014-01-bugfixes Bug fixes
- Fixed @ref CubeMapTextureArray::image() function (more precisely it - Fixed @cpp CubeMapTextureArray::image() @ce function (more precisely it
wasn't working at all). See also [mosra/magnum#31](https://github.com/mosra/magnum/issues/31). wasn't working at all). See also [mosra/magnum#31](https://github.com/mosra/magnum/issues/31).
- Fixed wrong assertion in @ref Texture::setWrapping() for rectangle - Fixed wrong assertion in @cpp Texture::setWrapping() @ce for rectangle
textures textures
- Fixed wrong assertion in @cpp AbstractImage::pixelSize() @ce when computing - Fixed wrong assertion in @cpp AbstractImage::pixelSize() @ce when computing
size of separate depth and stencil formats size of separate depth and stencil formats
- @ref Mesh::addVertexBuffer() now properly computes offsets for matrix - @cpp Mesh::addVertexBuffer() @ce now properly computes offsets for matrix
attributes attributes
- Taking index buffer offset into account in @ref MeshView class - Taking index buffer offset into account in @cpp MeshView @ce class
- Fixed various issues with textured @ref Shaders::Flat shader (actually - Fixed various issues with textured @ref Shaders::Flat shader (actually
the textured version was not working at all) the textured version was not working at all)
- Various OS X-related fixes in @ref Shaders library. See also - Various OS X-related fixes in @ref Shaders library. See also
@ -578,13 +577,13 @@ No dependency changes in this release.
@subsection changelog-2014-01-deprecated Deprecated APIs @subsection changelog-2014-01-deprecated Deprecated APIs
- @cpp Buffer::Usage @ce enum is deprecated to reduce header dependencies, use - @cpp Buffer::Usage @ce enum is deprecated to reduce header dependencies,
global @ref BufferUsage enum instead use global @cpp BufferUsage @ce enum instead
- @cpp Mesh::Primitive @ce enum is deprecated to reduce header dependencies, - @cpp Mesh::Primitive @ce enum is deprecated to reduce header dependencies,
use global @ref MeshPrimitive enum instead use global @cpp MeshPrimitive @ce enum instead
- @cpp Sampler::maxAnisotropy() @ce is deprecated to avoid naming conflict with - @cpp Sampler::maxAnisotropy() @ce is deprecated to avoid naming conflict with
@ref Texture::setMaxAnisotropy() "*Texture::setMaxAnisotropy()", use @cpp *Texture::setMaxAnisotropy() @ce, use
@ref Sampler::maxMaxAnisotropy() instead @cpp Sampler::maxMaxAnisotropy() @ce instead
- @cpp Magnum::Geometry::Rectangle @ce class (and @cpp Rectangle* @ce typedefs) - @cpp Magnum::Geometry::Rectangle @ce class (and @cpp Rectangle* @ce typedefs)
is deprecated, use more generic and feature-rich @ref Math::Range is deprecated, use more generic and feature-rich @ref Math::Range
instead. instead.
@ -664,8 +663,8 @@ for a high-level overview.
Magnum namespace. Note that template aliases are not present in GCC 4.6 Magnum namespace. Note that template aliases are not present in GCC 4.6
builds. builds.
- Limit queries for all OpenGL objects, the information is now printed also - Limit queries for all OpenGL objects, the information is now printed also
by @ref magnum-info "magnum-info" utility. by @ref magnum-gl-info "magnum-info" utility.
- @ref Context::isExtensionSupported() is now able to query extension - @cpp Context::isExtensionSupported() @ce is now able to query extension
availability on particular GLSL version availability on particular GLSL version
- Using @ref std::unique_ptr and C++1y @cpp std::optional @ce for resources - Using @ref std::unique_ptr and C++1y @cpp std::optional @ce for resources
returned from @ref Trade::AbstractImporter for better usability and to returned from @ref Trade::AbstractImporter for better usability and to
@ -679,8 +678,8 @@ for a high-level overview.
@subsection changelog-2013-10-changes Changes @subsection changelog-2013-10-changes Changes
- @ref Buffer::setData() and @ref Buffer::setSubData() are now accepting - @cpp Buffer::setData() @ce and @cpp Buffer::setSubData() @ce are now
@ref Containers::ArrayReference for more convenient usage accepting @cpp Containers::ArrayReference @ce for more convenient usage
- @ref Platform::Sdl2Application::viewportEvent() "Platform::*Application::viewportEvent()" - @ref Platform::Sdl2Application::viewportEvent() "Platform::*Application::viewportEvent()"
is not called at all if window size doesn't change, allowing for less is not called at all if window size doesn't change, allowing for less
cumbersome ofscreen rendering setups cumbersome ofscreen rendering setups
@ -711,8 +710,8 @@ for a high-level overview.
into @ref Math::swizzle() into @ref Math::swizzle()
- @cpp Buffer::setData() @ce and @cpp Buffer::setSubData() @ce overloads - @cpp Buffer::setData() @ce and @cpp Buffer::setSubData() @ce overloads
taking pair of data pointer and size are deprecated, use taking pair of data pointer and size are deprecated, use
@cpp Containers::ArrayReference @ce-based @ref Buffer::setData() and @cpp Containers::ArrayReference @ce-based @cpp Buffer::setData() @ce and
@ref Buffer::setSubData() @cpp Buffer::setSubData() @ce
- `ImageFormat.h` header, @cpp ImageFormat @ce and @cpp ImageType @ce enums - `ImageFormat.h` header, @cpp ImageFormat @ce and @cpp ImageType @ce enums
are deprecated, use `ColorFormat.h` header, `ColorFormat` and `ColorType` are deprecated, use `ColorFormat.h` header, `ColorFormat` and `ColorType`
enums which reflect OpenGL naming better instead enums which reflect OpenGL naming better instead
@ -724,7 +723,7 @@ for a high-level overview.
- @cpp AbstractShaderProgram::maxSupportedVertexAttributeCount() @ce, - @cpp AbstractShaderProgram::maxSupportedVertexAttributeCount() @ce,
@cpp AbstractTexture::maxSupportedLayerCount() @ce and @cpp AbstractTexture::maxSupportedLayerCount() @ce and
@cpp Sampler::maxSupportedAnisotropy() @ce are deprecated in favor of less @cpp Sampler::maxSupportedAnisotropy() @ce are deprecated in favor of less
verbose @ref AbstractShaderProgram::maxVertexAttributes(), verbose @cpp AbstractShaderProgram::maxVertexAttributes() @ce,
@cpp AbstractTexture::maxLayers() @ce and @cpp Sampler::maxAnisotropy() @ce @cpp AbstractTexture::maxLayers() @ce and @cpp Sampler::maxAnisotropy() @ce
@subsection changelog-2013-10-compatibility Potential compatibility breakages, removed APIs @subsection changelog-2013-10-compatibility Potential compatibility breakages, removed APIs

284
doc/changelog.dox

@ -73,13 +73,14 @@ See also:
@ref GL::hasCompressedPixelFormat(), @ref compressedPixelFormat() utilities @ref GL::hasCompressedPixelFormat(), @ref compressedPixelFormat() utilities
for converting generic @ref PixelFormat / @ref CompressedPixelFormat to for converting generic @ref PixelFormat / @ref CompressedPixelFormat to
GL-specific @ref GL::PixelFormat, @ref GL::PixelType and GL-specific @ref GL::PixelFormat, @ref GL::PixelType and
@ref GL::CompressedPixelFormat values. The @ref BufferImage and @ref GL::CompressedPixelFormat values. The @ref GL::BufferImage and
@ref CompressedBufferImage classes now have overloads accepting both types. @ref GL::CompressedBufferImage classes now have overloads accepting both
types.
- New @ref GL::meshPrimitive() and @ref GL::meshIndexType() utilities for - New @ref GL::meshPrimitive() and @ref GL::meshIndexType() utilities for
converting generic @ref MeshPrimitive and @ref MeshIndexType to GL-specific converting generic @ref MeshPrimitive and @ref MeshIndexType to GL-specific
@ref GL::MeshPrimitive and @ref GL::MeshIndexType values. The @ref Mesh @ref GL::MeshPrimitive and @ref GL::MeshIndexType values. The @ref GL::Mesh
class now has overloads accepting both types. class now has overloads accepting both types.
- New @ref Mesh::indexType() and @ref MeshView::mesh() getters - New @ref GL::Mesh::indexType() and @ref GL::MeshView::mesh() getters
- New @ref GL::samplerFilter(), @ref GL::samplerMipmap() and - New @ref GL::samplerFilter(), @ref GL::samplerMipmap() and
@ref GL::samplerWrapping() utilities for converting generic @ref GL::samplerWrapping() utilities for converting generic
@ref SamplerFilter, @ref SamplerMipmap and @ref SamplerWrapping to G @ref SamplerFilter, @ref SamplerMipmap and @ref SamplerWrapping to G
@ -96,7 +97,7 @@ See also:
their WebGL counterparts @webgl_extension{EXT,color_buffer_half_float}, their WebGL counterparts @webgl_extension{EXT,color_buffer_half_float},
@webgl_extension{WEBGL,color_buffer_float}, @webgl_extension{WEBGL,color_buffer_float},
@webgl_extension{EXT,color_buffer_float} @webgl_extension{EXT,color_buffer_float}
- Ported @ref OpenGLTester to WebGL - Ported @ref GL::OpenGLTester to WebGL
@subsubsection changelog-latest-new-platform Platform libraries @subsubsection changelog-latest-new-platform Platform libraries
@ -179,16 +180,17 @@ See also:
shader sources containing Unicode characters to be truncated to empty shader sources containing Unicode characters to be truncated to empty
strings. See the @cpp "emscripten-pthreads-broken-unicode-shader-sources" @ce strings. See the @cpp "emscripten-pthreads-broken-unicode-shader-sources" @ce
workaround description for details. workaround description for details.
- @ref Attribute::DataType::HalfFloat was not available on WebGL 2 by mistake - @ref GL::Attribute::DataType::HalfFloat was not available on WebGL 2 by
- A wrong code path for @ref Framebuffer::checkStatus() was selected on WebGL mistake
1 by mistake - A wrong code path for @ref GL::Framebuffer::checkStatus() was selected on
WebGL 1 by mistake
- Fixed `MAGNUM_PLUGINS_DIR` variables to contain proper absolute location by - Fixed `MAGNUM_PLUGINS_DIR` variables to contain proper absolute location by
default again. default again.
@subsection changelog-latest-deprecated Deprecated APIs @subsection changelog-latest-deprecated Deprecated APIs
- All GL-related headers and APIs from the root @ref Magnum/ directory and - All GL-related headers and APIs from the root `Magnum/` directory and
@ref Magnum namespace were moved to @ref Magnum/GL directory and @ref Magnum namespace were moved to the `Magnum/GL/` directory and
@ref Magnum::GL namespace. See their documentation for information about @ref Magnum::GL namespace. See their documentation for information about
particular files, classes, enums, typedefs, values and functions. particular files, classes, enums, typedefs, values and functions.
- The `MAGNUM_ASSERT_VERSION_SUPPORTED()`, `MAGNUM_ASSERT_EXTENSION_SUPPORTED()` - The `MAGNUM_ASSERT_VERSION_SUPPORTED()`, `MAGNUM_ASSERT_EXTENSION_SUPPORTED()`
@ -205,8 +207,8 @@ See also:
but marked as deprecated. Use either the generic values or but marked as deprecated. Use either the generic values or
@ref GL::PixelFormat (together with @ref GL::PixelType) and @ref GL::PixelFormat (together with @ref GL::PixelType) and
@ref GL::CompressedPixelFormat instead. @ref GL::CompressedPixelFormat instead.
- @ref PixelStorage::pixelSize() was deprecated, use @ref GL::pixelSize() - `PixelStorage::pixelSize()` was deprecated, use @ref GL::pixelSize() or
or @ref Magnum::pixelSize() instead @ref Magnum::pixelSize() instead
- `PixelStorage::dataProperties(GL::PixelFormat, GL::PixelSize, const Vector3i&)` - `PixelStorage::dataProperties(GL::PixelFormat, GL::PixelSize, const Vector3i&)`
was deprecated for being too GL-specific, use was deprecated for being too GL-specific, use
@ref PixelStorage::dataProperties(std::size_t, const Vector3i&) const @ref PixelStorage::dataProperties(std::size_t, const Vector3i&) const
@ -336,19 +338,19 @@ See also:
accepts GL-specific pixel formats, only the non-deprecated values from the accepts GL-specific pixel formats, only the non-deprecated values from the
generic @ref PixelFormat enum generic @ref PixelFormat enum
- The @ref Image::pixelSize(), @ref ImageView::pixelSize(), - The @ref Image::pixelSize(), @ref ImageView::pixelSize(),
@ref Trade::ImageData::pixelSize() and @ref BufferImage::pixelSize() @ref Trade::ImageData::pixelSize() and @ref GL::BufferImage::pixelSize()
functions now return @ref UnsignedInt instead of @cpp std::size_t @ce. functions now return @ref UnsignedInt instead of @cpp std::size_t @ce.
- Removed `PixelStorage::setSwapBytes()`, as every Magnum API dealing with - Removed `PixelStorage::setSwapBytes()`, as every Magnum API dealing with
images basically only asserted that it's not set. Use images basically only asserted that it's not set. Use
@ref Corrade::Utility::Endianness instead. @ref Corrade::Utility::Endianness instead.
- Removed the @cpp Buffer::Usage @ce enum that was deprecated in 2014.01, use - Removed the @cpp Buffer::Usage @ce enum that was deprecated in 2014.01, use
the global @ref BufferUsage enum instead the global @ref GL::BufferUsage enum instead
- Removed the `Magnum/Query.h` header that was deprecated in 2015.05, use one - Removed the `Magnum/Query.h` header that was deprecated in 2015.05, use one
of @ref Magnum/PrimitiveQuery.h, @ref Magnum/SampleQuery.h or of @ref Magnum/PrimitiveQuery.h, @ref Magnum/SampleQuery.h or
@ref Magnum/TimeQuery.h instead @ref Magnum/TimeQuery.h instead
- Removed ability to use @ref Buffer::Target as constructor or - Removed ability to use @ref GL::Buffer::Target as constructor or
@ref Buffer::setTargetHint() parameter that was deprecated in 2015.05, use @ref GL::Buffer::setTargetHint() parameter that was deprecated in 2015.05,
@ref Buffer::TargetHint instead use @ref GL::Buffer::TargetHint instead
- Removed the @cpp SceneGraph::TransformationType @ce enum that was - Removed the @cpp SceneGraph::TransformationType @ce enum that was
deprecated in 2015.05, use separate `<transform>()` and `<transform>Local()` deprecated in 2015.05, use separate `<transform>()` and `<transform>Local()`
variants instead variants instead
@ -367,7 +369,7 @@ See also:
vectors that was deprecated in 2015.05, use overload taking @ref Range2Di vectors that was deprecated in 2015.05, use overload taking @ref Range2Di
instead instead
- Removed the @cpp Mesh::maxVertexAttributes() @ce function that was - Removed the @cpp Mesh::maxVertexAttributes() @ce function that was
deprecated in 2015.05, use @ref AbstractShaderProgram::maxVertexAttributes() deprecated in 2015.05, use @ref GL::AbstractShaderProgram::maxVertexAttributes()
instead instead
- Removed @cpp Math::Vector::dot() @ce, @cpp Math::Complex::dot() @ce, - Removed @cpp Math::Vector::dot() @ce, @cpp Math::Complex::dot() @ce,
@cpp Math::Quaternion::dot() @ce, @cpp Math::Vector::angle() @ce, @cpp Math::Quaternion::dot() @ce, @cpp Math::Vector::angle() @ce,
@ -377,35 +379,35 @@ See also:
were deprecated in 2015.05, use @ref Math::dot(), @ref Math::angle(), were deprecated in 2015.05, use @ref Math::dot(), @ref Math::angle(),
@ref Math::lerp(), @ref Math::slerp() and @ref Math::cross() instead @ref Math::lerp(), @ref Math::slerp() and @ref Math::cross() instead
- Removed @cpp *Framebuffer::bind(FramebufferTarget) @ce function that was - Removed @cpp *Framebuffer::bind(FramebufferTarget) @ce function that was
deprecated in 2%15.05, use parameter-less @ref Framebuffer::bind() "*Framebuffer::bind()" deprecated in 2%15.05, use parameter-less @ref GL::Framebuffer::bind() "*Framebuffer::bind()"
instead instead
- Removed @cpp FramebufferTarget::ReadDraw @ce enum value that was deprecated - Removed @cpp FramebufferTarget::ReadDraw @ce enum value that was deprecated
in 2015.05, use separate @cpp FramebufferTarget::Read @ce and in 2015.05, use separate @cpp FramebufferTarget::Read @ce and
@cpp FramebufferTarget::Draw @ce values instead @cpp FramebufferTarget::Draw @ce values instead
- Removed @ref CubeMapTexture::imageSize() with explicit face parameter that - Removed @ref GL::CubeMapTexture::imageSize() with explicit face parameter
was deprecated in 2015.05, use overload that returns one value for all that was deprecated in 2015.05, use overload that returns one value for all
faces instead faces instead
- Removed the `Magnum/DebugMessage.h` header that was deprecated in 2015.05, - Removed the `Magnum/DebugMessage.h` header that was deprecated in 2015.05,
use @ref Magnum/DebugOutput.h instead use @ref Magnum/GL/DebugOutput.h instead
- Removed the @cpp DebugMessage::Severity @ce enum that was deprecated in - Removed the @cpp DebugMessage::Severity @ce enum that was deprecated in
2015.05, use @ref DebugOutput::Severity instead 2015.05, use @ref GL::DebugOutput::Severity instead
- Removed @cpp DebugMessage::Callback @ce typedef, @cpp DebugMessage::setCallback() @ce - Removed @cpp DebugMessage::Callback @ce typedef, @cpp DebugMessage::setCallback() @ce
and @cpp DebugMessage::setDefaultCallback() @ce function that were and @cpp DebugMessage::setDefaultCallback() @ce function that were
deprecated in 2015.05, use @ref DebugOutput::Callback, deprecated in 2015.05, use @ref GL::DebugOutput::Callback,
@ref DebugOutput::setCallback() and @ref DebugOutput::setDefaultCallback() @ref GL::DebugOutput::setCallback() and
instead @ref GL::DebugOutput::setDefaultCallback() instead
- Removed @cpp DebugMessage::maxLoggedMessages() @ce and - Removed @cpp DebugMessage::maxLoggedMessages() @ce and
@cpp DebugMessage::maxMessageLength() @ce functions that were deprecated in @cpp DebugMessage::maxMessageLength() @ce functions that were deprecated in
2015.05, use @ref DebugOutput::maxLoggedMessages() and 2015.05, use @ref GL::DebugOutput::maxLoggedMessages() and
@ref DebugOutput::maxMessageLength() instead @ref GL::DebugOutput::maxMessageLength() instead
- Removed @cpp DebugMessage::setEnabled() @ce function and related values - Removed @cpp DebugMessage::setEnabled() @ce function and related values
from @cpp DebugMessage::Source @ce enum that were deprecated in 2015.05, from @cpp DebugMessage::Source @ce enum that were deprecated in 2015.05,
use @ref DebugOutput::setEnabled() along with @ref DebugOutput::Source, use @ref GL::DebugOutput::setEnabled() along with @ref GL::DebugOutput::Source,
@ref DebugOutput::Type and @ref DebugOutput::Severity instead @ref GL::DebugOutput::Type and @ref GL::DebugOutput::Severity instead
- Removed parameter-less @cpp *Query @ce constructor and parametrized - Removed parameter-less @cpp *Query @ce constructor and parametrized
@cpp *Query::begin() @ce function that were deprecated in 2015.05, use @cpp *Query::begin() @ce function that were deprecated in 2015.05, use
constructor with parameter and parameter-less @ref Query::begin() "*Query::begin()" constructor with parameter and parameter-less
instead @ref GL::SampleQuery::begin() "GL::*Query::begin()" instead
- Removed `Timeline::setMinimalFrameTime()` that was deprecated since June - Removed `Timeline::setMinimalFrameTime()` that was deprecated since June
2015, use @ref Platform::Sdl2Application::setSwapInterval() "Platform::*Application::setSwapInterval()" 2015, use @ref Platform::Sdl2Application::setSwapInterval() "Platform::*Application::setSwapInterval()"
and/or @ref Platform::Sdl2Application::setMinimalLoopPeriod() "Platform::*Application::setMinimalLoopPeriod()" and/or @ref Platform::Sdl2Application::setMinimalLoopPeriod() "Platform::*Application::setMinimalLoopPeriod()"
@ -434,10 +436,11 @@ See also:
@ref Math::Color3 and @ref Math::Color4 instead @ref Math::Color3 and @ref Math::Color4 instead
- Removed `Magnum/ColorFormat.h` header and `ColorFormat` and `ColorType` - Removed `Magnum/ColorFormat.h` header and `ColorFormat` and `ColorType`
enums that were deprecated since August 2015, use enums that were deprecated since August 2015, use
@ref Magnum/PixelFormat.h, @ref PixelFormat and @ref PixelType instead @ref Magnum/GL/PixelFormat.h, @ref GL::PixelFormat and @ref GL::PixelType
instead
- Removed @ref Image, @ref ImageView, @ref Trade::ImageData constructors, - Removed @ref Image, @ref ImageView, @ref Trade::ImageData constructors,
@ref Image::setData() and @ref ImageView::setData() taking `void*` that `Image::setData()` and `ImageView::setData()` taking `void*` that were
were deprecated since August 2015, use constructors and functions taking deprecated since August 2015, use constructors and functions taking
@ref Corrade::Containers::Array / @ref Corrade::Containers::ArrayView @ref Corrade::Containers::Array / @ref Corrade::Containers::ArrayView
instead instead
@ -527,46 +530,54 @@ a high-level overview.
(see [mosra/magnum#53](https://github.com/mosra/magnum/issues/53)) (see [mosra/magnum#53](https://github.com/mosra/magnum/issues/53))
- Compressed image support: - Compressed image support:
- Added @ref CompressedPixelFormat enum, @ref CompressedImage, - Added @ref CompressedPixelFormat enum, @ref CompressedImage,
@ref CompressedImageView and @ref CompressedBufferImage classes @ref CompressedImageView and
- Added @ref Texture::setCompressedImage() "*Texture::setCompressedImage()", @ref GL::CompressedBufferImage "CompressedBufferImage" classes
@ref Texture::setCompressedSubImage() "*Texture::setCompressedSubImage()" - Added @ref GL::Texture::setCompressedImage() "*Texture::setCompressedImage()",
and @ref Texture::compressedImage() "Texture::compressedImage()" @ref GL::Texture::setCompressedSubImage() "*Texture::setCompressedSubImage()"
and @ref GL::Texture::compressedImage() "Texture::compressedImage()"
functions functions
- Added @ref Renderer::Hint::TextureCompression enum value - Added @ref GL::Renderer::Hint::TextureCompression "Renderer::Hint::TextureCompression"
enum value
- Ability to pass arguments to engine startup via - Ability to pass arguments to engine startup via
@ref Context "command-line and environment variables": @ref GL::Context "command-line and environment variables":
- The engine now prints what driver workarounds are enabled and gives the - The engine now prints what driver workarounds are enabled and gives the
user an ability to disable them via `--magnum-disable-workarounds` user an ability to disable them via `--magnum-disable-workarounds`
- It's possible to disable OpenGL extensions to work around driver bugs - It's possible to disable OpenGL extensions to work around driver bugs
using `--magnum-disable-extensions` using `--magnum-disable-extensions`
- It's possible to control amount of log output on engine startup via - It's possible to control amount of log output on engine startup via
`--magnum-log` `--magnum-log`
- Published OpenGL test setup code to a new @ref OpenGLTester library and - Published OpenGL test setup code to a new @ref GL::OpenGLTester "OpenGLTester"
added GPU time benchmarking to it library and added GPU time benchmarking to it
- Added @ref PixelStorage class, tracking OpenGL pixel storage state and - Added @ref PixelStorage class, tracking OpenGL pixel storage state and
applying it prior to read and upload of image data (see applying it prior to read and upload of image data (see
[mosra/magnum#104](https://github.com/mosra/magnum/issues/104)) [mosra/magnum#104](https://github.com/mosra/magnum/issues/104))
- Added @ref NoCreate tag to control initialization of GL object classes - Added @ref NoCreate tag to control initialization of GL object classes
- Added templated version of @ref Buffer::map() "Buffer::map*()" functions - Added templated version of @ref GL::Buffer::map() "Buffer::map*()"
functions
- New `BUILD_MULTITHREADED` @ref cmake "CMake option" and a corresponding - New `BUILD_MULTITHREADED` @ref cmake "CMake option" and a corresponding
@ref MAGNUM_BUILD_MULTITHREADED CMake variable and preprocessor define @ref MAGNUM_BUILD_MULTITHREADED CMake variable and preprocessor define
- Added @ref Framebuffer::detach() as a conunterpart to all the - Added @ref GL::Framebuffer::detach() "Framebuffer::detach()" as a
@ref Framebuffer::attachTexture() "attach*()" functions conunterpart to all the @ref GL::Framebuffer::attachTexture() "attach*()"
- Added @ref Framebuffer::attachLayeredTexture() for layered texture functions
attachments - Added @ref GL::Framebuffer::attachLayeredTexture() "Framebuffer::attachLayeredTexture()"
- Added @ref AbstractFramebuffer::clearDepth(), @ref AbstractFramebuffer::clearStencil(), for layered texture attachments
@ref AbstractFramebuffer::clearDepthStencil(), @ref DefaultFramebuffer::clearColor(), - Added @ref GL::AbstractFramebuffer::clearDepth() "AbstractFramebuffer::clearDepth()",
@ref Framebuffer::clearColor() @ref GL::AbstractFramebuffer::clearStencil() "AbstractFramebuffer::clearStencil()",
- Added @ref BufferImage::release() "{Compressed,}BufferImage::release()" and @ref GL::AbstractFramebuffer::clearDepthStencil() "AbstractFramebuffer::clearStencil()",
an ability to create @ref BufferImage "{Compressed,}BufferImage" from an @ref GL::DefaultFramebuffer::clearColor() "DefaultFramebuffer::clearColor()",
existing @ref Buffer @ref GL::Framebuffer::clearColor() "Framebuffer::clearColor()"
- New @ref Buffer::mapRead() convenience alternatives to @ref Buffer::map() - Added @ref GL::BufferImage::release() "{Compressed,}BufferImage::release()"
that return @cpp const @ce pointer and implicitly map as read-only and an ability to create @ref GL::BufferImage "{Compressed,}BufferImage"
- Implemented @ref Renderer::setMemoryBarrier() and from an existing @ref GL::Buffer "Buffer"
@ref Renderer::setMemoryBarrierByRegion() - New @ref GL::Buffer::mapRead() "Buffer::mapRead()" convenience alternatives
- Added @ref isVersionES() utility to @ref GL::Buffer::map() "Buffer::map()" that return @cpp const @ce
- Added @ref Context::isCoreProfile() pointer and implicitly map as read-only
- Added @ref TransformFeedback::maxVertexStreams() limit query - Implemented @ref GL::Renderer::setMemoryBarrier() "Renderer::setMemoryBarrier()"
and @ref GL::Renderer::setMemoryBarrierByRegion() "Renderer::setMemoryBarrierByRegion()"
- Added @ref GL::isVersionES() "isVersionES()" utility
- Added @ref GL::Context::isCoreProfile() "Context::isCoreProfile()"
- Added @ref GL::TransformFeedback::maxVertexStreams() "TransformFeedback::maxVertexStreams()"
limit query
@subsubsection changelog-2018-02-new-audio Audio library @subsubsection changelog-2018-02-new-audio Audio library
@ -590,7 +601,8 @@ a high-level overview.
[mosra/magnum#110](https://github.com/mosra/magnum/pull/110), [mosra/magnum#110](https://github.com/mosra/magnum/pull/110),
[mosra/magnum#116](https://github.com/mosra/magnum/pull/116)) [mosra/magnum#116](https://github.com/mosra/magnum/pull/116))
- New namespace @ref Audio::Extensions for OpenAL extensions, similar to - New namespace @ref Audio::Extensions for OpenAL extensions, similar to
@ref Extensions for OpenGL (see [mosra/magnum#111](https://github.com/mosra/magnum/pull/111)) @ref GL::Extensions "Extensions" for OpenGL (see
[mosra/magnum#111](https://github.com/mosra/magnum/pull/111))
- HRTF support through @ref Audio::Context::Configuration::setHrtf(), - HRTF support through @ref Audio::Context::Configuration::setHrtf(),
@ref Audio::Context::isHrtfEnabled(), @ref Audio::Context::hrtfStatus() @ref Audio::Context::isHrtfEnabled(), @ref Audio::Context::hrtfStatus()
(see [mosra/magnum#121](https://github.com/mosra/magnum/pull/121)) (see [mosra/magnum#121](https://github.com/mosra/magnum/pull/121))
@ -703,10 +715,10 @@ a high-level overview.
@ref Platform::GlfwApplication::window() to access the underlying window @ref Platform::GlfwApplication::window() to access the underlying window
handle handle
- Added @ref Platform::Sdl2Application::tickEvent() - Added @ref Platform::Sdl2Application::tickEvent()
- Added @ref Platform::Context::tryCreate(), which allows the context to be - Added @ref Platform::GLContext::tryCreate() "Platform::Context::tryCreate()",
destructed and created again in case the version is not what the which allows the context to be destructed and created again in case the
application wants (as opposed to just aborting the application) (see version is not what the application wants (as opposed to just aborting the
[mosra/magnum#105](https://github.com/mosra/magnum/issues/105)) application) (see [mosra/magnum#105](https://github.com/mosra/magnum/issues/105))
- Added @ref Platform::Sdl2Application::Configuration::setSRGBCapable() - Added @ref Platform::Sdl2Application::Configuration::setSRGBCapable()
- Added @ref Platform::Sdl2Application::Configuration::WindowFlag::Borderless - Added @ref Platform::Sdl2Application::Configuration::WindowFlag::Borderless
and @ref Platform::Sdl2Application::Configuration::WindowFlag::AllowHighDpi and @ref Platform::Sdl2Application::Configuration::WindowFlag::AllowHighDpi
@ -737,7 +749,7 @@ a high-level overview.
@subsubsection changelog-2018-02-new-shaders Shaders library @subsubsection changelog-2018-02-new-shaders Shaders library
- Ability to construct all @ref Shader classes without an OpenGL context - Ability to construct all @ref Shaders classes without an OpenGL context
present using @ref NoCreate present using @ref NoCreate
@subsubsection changelog-2018-02-new-text Text library @subsubsection changelog-2018-02-new-text Text library
@ -780,39 +792,46 @@ a high-level overview.
- Functionality that is not available on WebGL (like debug output etc.) is - Functionality that is not available on WebGL (like debug output etc.) is
not present in WebGL builds to reduce compiled code size not present in WebGL builds to reduce compiled code size
- The @ref Mesh class now stores a copy of @ref Buffer instance instead of - The @ref GL::Mesh "Mesh" class now stores a copy of @ref GL::Buffer "Buffer"
reference, meaning that you can move your buffers freely after assigning instance instead of reference, meaning that you can move your buffers
them to a mesh freely after assigning them to a mesh
- @ref Texture::setStorage() "*Texture::setStorage()" fallback implementation - @ref GL::Texture::setStorage() "*Texture::setStorage()" fallback
on OpenGL ES 2.0 and WebGL 1.0 now properly translates sized texture implementation on OpenGL ES 2.0 and WebGL 1.0 now properly translates sized
formats to what the drivers expect (see [mosra/magnum#214](https://github.com/mosra/magnum/issues/214)) texture formats to what the drivers expect (see
[mosra/magnum#214](https://github.com/mosra/magnum/issues/214))
- @ref Trade::TgaImporter "TgaImporter" and @ref Trade::TgaImageConverter "TgaImageConverter" - @ref Trade::TgaImporter "TgaImporter" and @ref Trade::TgaImageConverter "TgaImageConverter"
now consistently use RGB(A) on all platforms and don't require BGR(A) on now consistently use RGB(A) on all platforms and don't require BGR(A) on
desktop desktop
- Ignoring @cpp "No errors." @ce message produced by GLSL compiler/linker on - Ignoring @cpp "No errors." @ce message produced by GLSL compiler/linker on
Intel Windows drivers. Intel Windows drivers.
- @ref Texture::image() "*Texture::image()" and @ref Framebuffer::read() "*Framebuffer::read()" - @ref GL::Texture::image() "*Texture::image()" and
@ref GL::Framebuffer::read() "*Framebuffer::read()"
now reallocate image data only if needed, for both @ref Image and now reallocate image data only if needed, for both @ref Image and
@ref BufferImage types @ref GL::BufferImage "BufferImage" types
- R-value @ref Image "Image*" no longer restricts conversion to - R-value @ref Image "Image*" no longer restricts conversion to
@ref ImageView as it is a valid use case (for example passing output from @ref ImageView as it is a valid use case (for example passing output from
@ref Framebuffer::read() directly to @ref Trade::AbstractImageConverter::exportToFile()) @ref GL::Framebuffer::read() "Framebuffer::read()" directly to
@ref Trade::AbstractImageConverter::exportToFile())
- It's no longer possible to call @ref Image::data() "Image*::data()" on - It's no longer possible to call @ref Image::data() "Image*::data()" on
r-value instances as that would cause accessing freed data. Use r-value instances as that would cause accessing freed data. Use
@ref Image::release() instead. @ref Image::release() instead.
- @ref Buffer::map() now returns @ref Corrade::Containers::ArrayView instead - @ref GL::Buffer::map() "Buffer::map()" now returns
of a plain pointer for better security @ref Corrade::Containers::ArrayView instead of a plain pointer for better
- Improved @ref Context::resetState() to better handle corner cases with VAOs security
- Improved @ref GL::Context::resetState() "Context::resetState()" to better
handle corner cases with VAOs
- Graceful handling of broken GL contexts - Graceful handling of broken GL contexts
- Behavior of @ref Version::GLES200 and upwards on desktop OpenGL is changed - Behavior of @ref GL::Version::GLES200 "Version::GLES200" and upwards on
to request an ES dialect of GLSL when used in @ref Shader (instead of a desktop OpenGL is changed to request an ES dialect of GLSL when used in
particular desktop GL version that supports given ES version), looks for @ref GL::Shader "Shader" (instead of a particular desktop GL version that
@extension{ARB,ES2_compatibility} and others (instead of checking for a supports given ES version), looks for @extension{ARB,ES2_compatibility} and
particular desktop GL version that supports given ES version) others (instead of checking for a particular desktop GL version that
supports given ES version)
- Binding some default VAO in case the engine is running on core profile with - Binding some default VAO in case the engine is running on core profile with
@extension{ARB,vertex_array_object} disabled @extension{ARB,vertex_array_object} disabled
- It's now possible to create @ref ImageView with @cpp nullptr @ce data (for - It's now possible to create @ref ImageView with @cpp nullptr @ce data (for
example for old-style texture allocation using @ref Texture::setImage()) example for old-style texture allocation using
@ref GL::Texture::setImage() "Texture::setImage()")
- Various workarounds to make the engine working better on SVGA3D drivers - Various workarounds to make the engine working better on SVGA3D drivers
(VMWare guest) (VMWare guest)
- Various updates and code modernization (see - Various updates and code modernization (see
@ -904,9 +923,10 @@ a high-level overview.
@subsection changelog-2018-02-bugfixes Bug fixes @subsection changelog-2018-02-bugfixes Bug fixes
- Wrapping mode for @ref CubeMapTexture is now correctly two-dimensional - Wrapping mode for @ref GL::CubeMapTexture "CubeMapTexture" is now correctly
instead of three-dimensional, wrapping mode for @ref Texture2DArray "TextureNDArray" two-dimensional instead of three-dimensional, wrapping mode for
is now correctly N-dimensional instead of N+1 @ref GL::Texture2DArray "TextureNDArray" is now correctly N-dimensional
instead of N+1
- Fixed WebGL context creation on Internet Explorer, it claims to have - Fixed WebGL context creation on Internet Explorer, it claims to have
version 0.94 version 0.94
- Fixed random browser-specific issues by avoiding the use of XHTML in - Fixed random browser-specific issues by avoiding the use of XHTML in
@ -918,17 +938,19 @@ a high-level overview.
- Various fixes for OpenGL object label queries on AMD drivers - Various fixes for OpenGL object label queries on AMD drivers
- Fixed @ref TextureTools::distanceField() on 3.0 &lt;= GL < 3.2 - Fixed @ref TextureTools::distanceField() on 3.0 &lt;= GL < 3.2
- Fixed driver crash on AMD with @ref TextureTools::distanceField() - Fixed driver crash on AMD with @ref TextureTools::distanceField()
- @ref Framebuffer::attachCubeMapTexture() incorrectly behaved as a layered - @ref GL::Framebuffer::attachCubeMapTexture() "Framebuffer::attachCubeMapTexture()"
attachment (see [mosra/magnum#123](https://github.com/mosra/magnum/issues/123)) incorrectly behaved as a layered attachment (see
[mosra/magnum#123](https://github.com/mosra/magnum/issues/123))
- Fixed object label queries using the @extension{EXT,debug_label} - Fixed object label queries using the @extension{EXT,debug_label}
extension extension
- @extension{EXT,direct_state_access} function was accidentally used in - @extension{EXT,direct_state_access} function was accidentally used in
@extension{ARB,direct_state_access} code path, causing crashes on Mesa @extension{ARB,direct_state_access} code path, causing crashes on Mesa
- Properly export @ref Framebuffer::DrawAttachment to avoid linker failures - Properly export @ref GL::Framebuffer::DrawAttachment "Framebuffer::DrawAttachment"
on Windows to avoid linker failures on Windows
- Fixed @ref Framebuffer attachments on GLES2 drivers w/o separate read/draw - Fixed @ref GL::Framebuffer "Framebuffer" attachments on GLES2 drivers w/o
bindings (see [mosra/magnum#204](https://github.com/mosra/magnum/issues/204)) separate read/draw bindings (see
- Fixed @ref Framebuffer binding on WebGL (see [mosra/magnum#204](https://github.com/mosra/magnum/issues/204))
- Fixed @ref GL::Framebuffer "Framebuffer" binding on WebGL (see
[mosra/magnum#134](https://github.com/mosra/magnum/pull/134)) [mosra/magnum#134](https://github.com/mosra/magnum/pull/134))
- On Emscripten, @ref Platform::Sdl2Application was by default rendering a - On Emscripten, @ref Platform::Sdl2Application was by default rendering a
800x600 canvas to an area of 640x480 pixels, causing severe aliasing. 800x600 canvas to an area of 640x480 pixels, causing severe aliasing.
@ -941,8 +963,8 @@ a high-level overview.
its subclasses its subclasses
- Fixed @ref Trade::ObjImporter on Android - Fixed @ref Trade::ObjImporter on Android
- Fixed assertion when using @ref DebugTools::ObjectRenderer - Fixed assertion when using @ref DebugTools::ObjectRenderer
- Fixed appearance of @ref Primitives::Cylinder::solid() and - Fixed appearance of `Primitives::Cylinder::solid()` and
@ref Primitives::Circle::solid() (see [mosra/magnum#197](https://github.com/mosra/magnum/pull/197), `Primitives::Circle::solid()` (see [mosra/magnum#197](https://github.com/mosra/magnum/pull/197),
[mosra/magnum#220](https://github.com/mosra/magnum/pull/220)) [mosra/magnum#220](https://github.com/mosra/magnum/pull/220))
- Fixed a possible OOB access when reading @ref Math::Vector / - Fixed a possible OOB access when reading @ref Math::Vector /
@ref Math::RectangularMatrix from @ref Corrade::Utility::Configuration @ref Math::RectangularMatrix from @ref Corrade::Utility::Configuration
@ -981,13 +1003,12 @@ a high-level overview.
- `SceneGraph::AbstractCamera`, `SceneGraph::AbstractBasicCamera2D`, - `SceneGraph::AbstractCamera`, `SceneGraph::AbstractBasicCamera2D`,
`SceneGraph::AbstractBasicCamera3D`, `SceneGraph::AbstractCamera2D` and `SceneGraph::AbstractBasicCamera3D`, `SceneGraph::AbstractCamera2D` and
`SceneGraph::AbstractCamera3D` are deprecated, use @ref SceneGraph::Camera, `SceneGraph::AbstractCamera3D` are deprecated, use @ref SceneGraph::Camera,
@ref SceneGraph::BasicCamera2D, @ref SceneGraph::BasicCamera3D, @ref SceneGraph::BasicCamera2D, @ref SceneGraph::BasicCamera3D, @ref SceneGraph::Camera2D and @ref SceneGraph::Camera3D instead
@ref SceneGraph::Camera2D and @ref SceneGraph::Camera3D instead
- `Math::Matrix::IdentityType`, `Math::Matrix::ZeroType`, - `Math::Matrix::IdentityType`, `Math::Matrix::ZeroType`,
`Math::Matrix::Identity` and `Math::Matrix::Zero` are deprecated, use the `Math::Matrix::Identity` and `Math::Matrix::Zero` are deprecated, use the
new @ref Math::IdentityInit and @ref Math::ZeroInit tags instead new @ref Math::IdentityInit and @ref Math::ZeroInit tags instead
- `AbstractShaderProgram::setUniform(Int, UnsignedInt, const T*)` is - `AbstractShaderProgram::setUniform(Int, UnsignedInt, const T*)` is
deprecated, use @ref AbstractShaderProgram::setUniform(Int, Containers::ArrayView<const Float>) "AbstractShaderProgram::setUniform(Int, Containers::ArrayView<const T>)" deprecated, use @ref GL::AbstractShaderProgram::setUniform(Int, Containers::ArrayView<const Float>) "AbstractShaderProgram::setUniform(Int, Containers::ArrayView<const T>)"
instead instead
- `Magnum/ImageReference.h` header and `ImageReference` type is deprecated, - `Magnum/ImageReference.h` header and `ImageReference` type is deprecated,
use @ref Magnum/ImageView.h and @ref ImageView instead use @ref Magnum/ImageView.h and @ref ImageView instead
@ -995,22 +1016,26 @@ a high-level overview.
deprecated, use @ref Magnum/Math/Color.h, @ref Math::Color3 and deprecated, use @ref Magnum/Math/Color.h, @ref Math::Color3 and
@ref Math::Color4 instead @ref Math::Color4 instead
- `Magnum/ColorFormat.h` header and `ColorFormat` and `ColorType` enums are - `Magnum/ColorFormat.h` header and `ColorFormat` and `ColorType` enums are
deprecated, use @ref Magnum/PixelFormat.h, @ref PixelFormat and @ref PixelType deprecated, use @ref Magnum/GL/PixelFormat.h "Magnum/PixelFormat.h",
@ref GL::PixelFormat "PixelFormat" and @ref GL::PixelType "PixelType"
instead instead
- @ref Image, @ref ImageView, @ref Trade::ImageData constructors, @ref Image::setData() - @ref Image, @ref ImageView, @ref Trade::ImageData constructors,
and @ref ImageView::setData() taking `void*` are deprecated, use `Image::setData()` and `ImageView::setData()` taking `void*` are
constructors and functions taking @ref Corrade::Containers::Array / deprecated, use constructors and functions taking
@ref Corrade::Containers::ArrayView instead @ref Corrade::Containers::Array / @ref Corrade::Containers::ArrayView
- Templated @ref Buffer::data(), @ref Buffer::subData() and
@ref Buffer::map() are deprecated, use the non-templated versions in
combination with @ref Corrade::Containers::arrayCast() instead (see
[mosra/magnum#213](https://github.com/mosra/magnum/issues/213))
- `CubeMapTexture::Coordinate` enum is deprecated, use @ref CubeMapCoordinate
instead instead
- @ref Context::current() and @ref Audio::Context::current() returning a - Templated @ref GL::Buffer::data() "Buffer:.data()",
pointer is deprecated, it's returning a reference now and asserts that a @ref GL::Buffer::subData() "Buffer::subData()" and
context exists. Use @ref Context::hasCurrent() and @ref Audio::Context::hasCurrent() @ref GL::Buffer::map() "Buffer::map()" are deprecated, use the
to check for context presence. non-templated versions in combination with @ref Corrade::Containers::arrayCast()
instead (see [mosra/magnum#213](https://github.com/mosra/magnum/issues/213))
- `CubeMapTexture::Coordinate` enum is deprecated, use
@ref GL::CubeMapCoordinate "CubeMapCoordinate" instead
- @ref GL::Context::current() "Context::current()" and
@ref Audio::Context::current() returning a pointer is deprecated, it's
returning a reference now and asserts that a context exists. Use
@ref GL::Context::hasCurrent() "Context::hasCurrent()" and
@ref Audio::Context::hasCurrent() to check for context presence.
- Angle literals available directly in the @ref Magnum namespace are - Angle literals available directly in the @ref Magnum namespace are
deprecated, import the @ref Math::Literals namespace instead deprecated, import the @ref Math::Literals namespace instead
- `Platform::Sdl2Application::MouseEvent::Button::WheelUp`, - `Platform::Sdl2Application::MouseEvent::Button::WheelUp`,
@ -1052,32 +1077,37 @@ a high-level overview.
- Removed `Context::majorVersion()` and `Context::minorVersion()` functions, - Removed `Context::majorVersion()` and `Context::minorVersion()` functions,
use @ref Context::version() instead use @ref Context::version() instead
- Removed deprecated `Magnum/DebugMarker.h` header, use - Removed deprecated `Magnum/DebugMarker.h` header, use
@ref Magnum/DebugOutput.h and @ref DebugMessage class instead @ref Magnum/DebugOutput.h and @ref GL::DebugMessage "DebugMessage" class
- Removed deprecated `*Buffer` values from @ref FramebufferBlit, use values instead
without the `Buffer` suffix - Removed deprecated `*Buffer` values from
@ref GL::FramebufferBlit "FramebufferBlit", use values without the `Buffer`
suffix
- Removed deprecated list-argument functions taking pointers from @ref Audio - Removed deprecated list-argument functions taking pointers from @ref Audio
and @ref SceneGraph libraries, use lists of references instead and @ref SceneGraph libraries, use lists of references instead
- Removed deprecated texture unit enums from @ref Shaders library, use - Removed deprecated texture unit enums from @ref Shaders library, use
dedicated texture setters instead dedicated texture setters instead
- Removed deprecated `*Texture::maxLayers()` functions, use - Removed deprecated `*Texture::maxLayers()` functions, use
@ref Shader::maxCombinedTextureImageUnits() instead @ref GL::Shader::maxCombinedTextureImageUnits() "Shader::maxCombinedTextureImageUnits()"
instead
- Removed deprecated @ref MeshTools::combineIndexedArrays(), - Removed deprecated @ref MeshTools::combineIndexedArrays(),
@ref MeshTools::compressIndices(), @ref MeshTools::interleave() and @ref MeshTools::compressIndices(), @ref MeshTools::interleave() and
@ref MeshTools::removeDuplicates() overloads, use the general ones instead @ref MeshTools::removeDuplicates() overloads, use the general ones instead
- Removed deprecated `Mesh*::set*{Range,Count}()` functions, use - Removed deprecated `Mesh*::set*{Range,Count}()` functions, use
@ref Mesh::setCount() "Mesh*::setCount()" and @ref MeshView::setIndexRange() @ref GL::Mesh::setCount() "Mesh*::setCount()" and
instead @ref GL::MeshView::setIndexRange() "MeshView::setIndexRange()" instead
- Removed deprecated parameterless @ref Mesh::draw() "Mesh*::draw()" - Removed deprecated parameterless @ref GL::Mesh::draw() "Mesh*::draw()"
overload, use the one with explicit shader parameter instead overload, use the one with explicit shader parameter instead
- Removed deprecated `Context::Flag::Robustness` enum value, use - Removed deprecated `Context::Flag::Robustness` enum value, use
@ref Context::Flag::RobustAccess instead @ref GL::Context::Flag::RobustAccess "Context::Flag::RobustAccess" instead
- Removed deprecated `Texture::Target` enum, use dedicated @ref Texture, - Removed deprecated `Texture::Target` enum, use dedicated
@ref TextureArray, @ref RectangleTexture and @ref MultisampleTexture @ref GL::Texture "Texture", @ref GL::TextureArray "TextureArray",
classes instead @ref GL::RectangleTexture "RectangleTexture" and
@ref GL::MultisampleTexture "MultisampleTexture" classes instead
- Removed deprecated @ref Resource conversion operator, use explicit - Removed deprecated @ref Resource conversion operator, use explicit
conversion instead conversion instead
- Removed deprecated `Framebuffer::attachTexture*D()` overloads, use one of - Removed deprecated `Framebuffer::attachTexture*D()` overloads, use one of
@ref Framebuffer::attachTexture() or @ref Framebuffer::attachTextureLayer() @ref GL::Framebuffer::attachTexture() "Framebuffer::attachTexture()" or
@ref GL::Framebuffer::attachTextureLayer() "Framebuffer::attachTextureLayer()"
overloads instead. overloads instead.
- Removed `SceneGraph::Camera3D::near()` and `SceneGraph::Camera3D::far()` - Removed `SceneGraph::Camera3D::near()` and `SceneGraph::Camera3D::far()`
getters, because they can't be provided anymore with current more general getters, because they can't be provided anymore with current more general
@ -1094,7 +1124,7 @@ a high-level overview.
@subsection changelog-2018-02-performance Performance improvements @subsection changelog-2018-02-performance Performance improvements
- Reduced size of and number of allocations in @ref Mesh class. - Reduced size of and number of allocations in @ref GL::Mesh "Mesh" class.
@subsection changelog-2018-02-docs Documentation @subsection changelog-2018-02-docs Documentation

Loading…
Cancel
Save