Browse Source

GL: make the usage parameter in Buffer::setData() optional.

So simple change, so big usability impact. These hints don't do much to
performance anyway.
pull/255/head
Vladimír Vondruš 8 years ago
parent
commit
53c6d763ae
  1. 2
      doc/changelog.dox
  2. 6
      src/Magnum/GL/Buffer.h

2
doc/changelog.dox

@ -73,6 +73,8 @@ See also:
- @ref GL::Mesh::draw() and @ref GL::MeshView::draw() now return a reference - @ref GL::Mesh::draw() and @ref GL::MeshView::draw() now return a reference
to self to make method-chained draws (for example using a different shader) to self to make method-chained draws (for example using a different shader)
possible as well possible as well
- The @ref GL::BufferUsage parameter in @ref GL::Buffer::setData() is now
optional, defaults to @ref GL::BufferUsage::StaticDraw
@subsubsection changelog-latest-changes-meshtools MeshTools library @subsubsection changelog-latest-changes-meshtools MeshTools library

6
src/Magnum/GL/Buffer.h

@ -1020,16 +1020,16 @@ class MAGNUM_GL_EXPORT Buffer: public AbstractObject {
* @fn_gl_extension_keyword{NamedBufferData,EXT,direct_state_access}, * @fn_gl_extension_keyword{NamedBufferData,EXT,direct_state_access},
* eventually @fn_gl{BindBuffer} and @fn_gl_keyword{BufferData} * eventually @fn_gl{BindBuffer} and @fn_gl_keyword{BufferData}
*/ */
Buffer& setData(Containers::ArrayView<const void> data, BufferUsage usage); Buffer& setData(Containers::ArrayView<const void> data, BufferUsage usage = BufferUsage::StaticDraw);
/** @overload */ /** @overload */
template<class T> Buffer& setData(const std::vector<T>& data, BufferUsage usage) { template<class T> Buffer& setData(const std::vector<T>& data, BufferUsage usage = BufferUsage::StaticDraw) {
setData({data.data(), data.size()}, usage); setData({data.data(), data.size()}, usage);
return *this; return *this;
} }
/** @overload */ /** @overload */
template<std::size_t size, class T> Buffer& setData(const std::array<T, size>& data, BufferUsage usage) { template<std::size_t size, class T> Buffer& setData(const std::array<T, size>& data, BufferUsage usage = BufferUsage::StaticDraw) {
setData({data.data(), data.size()}, usage); setData({data.data(), data.size()}, usage);
return *this; return *this;
} }

Loading…
Cancel
Save