![]() |
XII Release 0.1.0
|
#include <GpuInstanceData.h>
Classes | |
| struct | UploadHandles |
Public Member Functions | |
| xiiGpuInstanceData (const xiiWorld &world) | |
| xiiResult | UpdateFromExtraction (xiiArrayPtr< xiiRenderData *const > packets, xiiUInt64 frame) |
| xiiResult | UpdateFromExtraction (const xiiExtractedRenderData &packets, xiiUInt64 frame) |
| xiiArrayPtr< const xiiGpuSceneInstance > | GetInstances () const |
| xiiArrayPtr< const xiiMat4 > | GetSkinningMatrices () const |
| xiiArrayPtr< const xiiGpuInstanceUploadRange > | GetUploadRanges () const |
| xiiUInt32 | GetInstanceCount () const |
| xiiUInt64 | GetDataRevision () const |
| Changes when packed records, membership or pose bytes change; never a serialized identity. | |
| xiiUInt64 | GetMaximumMeshletCount () const |
| xiiMeshResourceHandle | GetMeshResource (xiiUInt32 drawIndex) const |
| xiiMaterialGpuHandle | GetMaterialHandle (xiiUInt32 drawIndex) const |
| xiiArrayPtr< const float > | GetMorphWeights (xiiUInt32 drawIndex) const |
| xiiMeshBufferResourceHandle | GetMeshBufferResource (xiiUInt32 drawIndex) const |
| xiiArrayPtr< const xiiMeshMorphTarget > | GetMorphTargets (xiiUInt32 drawIndex) const |
| xiiResult | Resolve (xiiUInt32 gpuIdentity, xiiGpuInstanceSource &source) const |
| Returns failure for background, retired candidates, a foreign world's identity or dead owners. | |
| void | SelectInstances (xiiArrayPtr< xiiRenderData *const > packets, xiiDynamicArray< xiiUInt32 > &indices) const |
| Produces a compact candidate stream for a camera or picking subset; records are not copied. | |
| UploadHandles | AddUploadPass (xiiRenderGraph &graph, xiiUInt64 frame) const |
| const xiiGpuInstanceUploadStatistics & | GetUploadStatistics () const |
Packed, derived GPU draw data for one world. Has no object authoring, hierarchy or transform propagation API. Only extraction changes membership; world/component handles remain authoritative. Update and borrowed reads require the owning world's CPU extraction boundary. Graph callbacks copy their required upload bytes so they never access mutable world/component storage.
| xiiGpuInstanceData::UploadHandles xiiGpuInstanceData::AddUploadPass | ( | xiiRenderGraph & | graph, |
| xiiUInt64 | frame ) const |
Shared world allocations, imported by explicit graph handles. Dirty bytes are copied into graph-owned upload data; later cameras/occurrences reuse the same frame's physical buffers.