Common interface for shader uniform buffers.
#include <renderer/YiUniformBufferObject.h>
Public Types | |
enum | Type { Type::Float, Type::FVec2, Type::FVec3, Type::FVec4, Type::Integer, Type::IVec2, Type::IVec3, Type::IVec4, Type::Mat2, Type::Mat3, Type::Mat4 } |
![]() | |
enum | Status { Status::Invalid, Status::Unloaded, Status::LoadedFresh, Status::LoadedStale } |
Public Member Functions | |
virtual void | Set (const CYIUniformBufferId &uniformBufferId, Type type, uint32_t count, const char *pData)=0 |
virtual void | Remove (const CYIUniformBufferId &uniformBufferId)=0 |
![]() | |
IYIGPUObject () | |
virtual | ~IYIGPUObject () |
virtual void | Load (const std::shared_ptr< CYIAssetHardware > &pHWAsset)=0 |
virtual void | Unload ()=0 |
Status | GetStatus () const |
virtual void | Use () const =0 |
virtual void | Generate ()=0 |
virtual void | Free ()=0 |
virtual void | InvalidateHandle ()=0 |
Additional Inherited Members | |
![]() | |
Status | m_status |
|
strong |
|
pure virtual |
An interface for removing data in a uniform buffer object.
|
pure virtual |
An interface for setting data in a uniform buffer object. The data will be associated with the name given, and subsequent calls to Use() will set the data appropriately.