template<class InstanceData>
BasicInstancedGLLayer class
Base for instanced layers with OpenGL backend.
Contents
- Reference
Adds OpenGL mesh and buffer management on top of BasicInstancedLayer.
Base classes
-
template<class InstanceData>class BasicInstancedLayer
- Base for instanced layers.
Public functions
- auto buffer() -> GL::Buffer&
- Instance data buffer.
- auto mesh() -> GL::Mesh&
- Layer mesh.
-
void reset(std::
size_t capacity, GL:: BufferUsage usage) - Reset the layer.
- void update()
- Update the layer.
- void draw(AbstractUiShader& shader)
- Draw the layer using provided shader.
Function documentation
template<class InstanceData>
void Magnum:: Ui:: BasicInstancedGLLayer<InstanceData>:: reset(std:: size_t capacity,
GL:: BufferUsage usage)
Reset the layer.
Allocates CPU and GPU memory to store given capacity
of instances, clearing everything that has been set before. If current memory capacity is larger or equal to capacity
, no reallocation is done.
template<class InstanceData>
void Magnum:: Ui:: BasicInstancedGLLayer<InstanceData>:: update()
Update the layer.
Copies all data modified using modifyElement() to GPU memory. Called automatically at the beginning of BasicUserInterface::