InstanceData¶
InstanceData interface.
Overview¶
Typical use cases:
Defining a common interface for graphic batch handling
Header¶
<RaeptorCogs/GAPI/Common/Core/InstanceData.hpp>
Metadata¶
- Author
Estorc
- Version
v1.0
- Copyright
Copyright (c) 2025 Estorc MIT License.
Types¶
Type |
Description |
|---|---|
|
No description. |
|
No description. |
|
No description. |
-
using RaeptorCogs::GAPI::Common::DynamicInstanceData = float¶
-
using RaeptorCogs::GAPI::Common::StaticInstanceDataBuffer = std::vector<StaticInstanceData>¶
Structs¶
Struct |
Description |
|---|---|
|
No description. |
|
No description. |
-
struct InstanceData¶
Public Functions
-
inline StaticInstanceDataBuffer &getStatic()¶
-
inline DynamicInstanceDataBuffer &getDynamic()¶
-
inline StaticInstanceDataBuffer &getStatic()¶
-
struct StaticInstanceData¶
Classes¶
Class |
Description |
|---|---|
|
No description. |
|
No description. |
-
class InstanceAllocator¶
Public Functions
-
inline InstanceAllocator(InstanceData &instanceData)¶
-
void allocate(GraphicBatchHandler &batchHandler, size_t dynamicDataSize)¶
-
void free(GraphicBatchHandler &batchHandler)¶
-
StaticInstanceData &getStaticInstanceData(size_t offset)¶
-
DynamicInstanceData *getDynamicInstanceData(size_t offset)¶
Private Functions
Private Members
-
InstanceData &instanceData¶
-
RegionAllocator freeStaticDataRegionsAllocator¶
-
RegionAllocator freeDynamicDataRegionsAllocator¶
-
inline InstanceAllocator(InstanceData &instanceData)¶
-
class InstanceUploader¶
Public Functions
-
inline InstanceUploader(InstanceData &instanceData)¶
-
void upload(RaeptorCogs::GAPI::ObjectHandler<SSBO> *staticInstanceDataSSBO, RaeptorCogs::GAPI::ObjectHandler<SSBO> *dynamicInstanceDataSSBO)¶
Private Members
-
InstanceData &instanceData¶
-
RegionBuffer dirtyStaticDataRegions¶
-
RegionBuffer dirtyDynamicDataRegions¶
-
inline InstanceUploader(InstanceData &instanceData)¶