Game of Ur 0.3.3
This is a computer adaptation of Game of Ur, written in C++ mainly using SDL and OpenGL.
|
The allocator associated with built in light sources used as attributes. More...
#include <light.hpp>
Public Member Functions | |
LightInstanceAllocator (const std::vector< LightEmissionData > &lightEmissionDataList, const std::vector< glm::mat4 > &lightModelMatrices) | |
![]() | |
BaseInstanceAllocator (const InstanceLayout &instanceLayout) | |
Construct a new base instance allocator object. | |
BaseInstanceAllocator (BaseInstanceAllocator &&other)=delete | |
BaseInstanceAllocator (const BaseInstanceAllocator &other)=delete | |
BaseInstanceAllocator & | operator= (BaseInstanceAllocator &&other)=delete |
BaseInstanceAllocator & | operator= (const BaseInstanceAllocator &other)=delete |
virtual | ~BaseInstanceAllocator () |
Destroys the allocator object. | |
InstanceLayout | getInstanceLayout () const |
Gets the instance attribute layout for this object. | |
void | bind (const InstanceLayout &shaderInstanceLayout) |
Binds a (subset of) this object's instance attributes to the currently active shader. | |
void | unbind () |
Unbinds this object's instance attributes. | |
bool | isUploaded () |
Tests whether the attribute data associated with this allocator has been uploaded to memory. | |
Protected Member Functions | |
virtual void | upload () override |
Uploads this object's attribute data to GPU memory. | |
Private Attributes | |
std::vector< LightPackedData > | mLightData |
Additional Inherited Members | |
![]() | |
GLuint | mVertexBufferIndex {0} |
The OpenGL handle associated with the buffer that this object's instance data has been storerd on. | |
The allocator associated with built in light sources used as attributes.
|
overrideprotectedvirtual |
Uploads this object's attribute data to GPU memory.
Implements ToyMaker::BaseInstanceAllocator.