|
Vulkan Schnee 0.0.1 (22840dc8)
High-performance rendering engine
|
Registry store for animation clip handles. More...
#include <AssetRegistry.h>
Classes | |
| struct | Record |
| Stored metadata for one animation clip handle slot. More... | |
Public Member Functions | |
| AnimationClipStore (AssetManager *assetManager=nullptr) | |
| Creates an animation clip store backed by an optional asset manager. | |
| void | setAssetManager (AssetManager *assetManager) |
| Sets the asset manager used when new animation handles request payload loading. | |
| Assets::AnimationClipHandle | load (const Asset::MeshPath &animationPath) |
| Gets or creates a stable handle for an authored animation source path. | |
| Assets::AnimationClipHandle | registerRuntimeAnimation (Asset::MeshPath animationPath, std::unique_ptr< Assets::Animation > animation) |
| Registers a runtime animation payload and returns its stable animation clip handle. | |
| bool | isValid (Assets::AnimationClipHandle handle) const |
| Checks whether an animation clip handle refers to a live slot in this store. | |
| const Asset::MeshPath * | path (Assets::AnimationClipHandle handle) const |
| Returns the authored animation path for an animation clip handle. | |
| Assets::Animation * | payload (Assets::AnimationClipHandle handle) const |
| Resolves an animation clip handle to its loaded payload behind the manager boundary. | |
Static Private Member Functions | |
| static std::string | keyFor (const Asset::MeshPath &animationPath) |
| Builds the deduplication key for an animation source path and animation name. | |
Private Attributes | |
| AssetManager * | assetManager_ = nullptr |
| Optional bridge used to request animation refs. | |
| std::vector< Record > | records_ |
| Slot storage indexed by AnimationClipHandle::index. | |
| std::unordered_map< std::string, uint32_t > | pathToIndex_ |
| Deduplication map from keyFor() to slot index. | |
Registry store for animation clip handles.
AnimationClipStore deduplicates authored animation paths (source glTF file plus animation name), returns stable AnimationClipHandle values, and can resolve a handle back to its loaded payload.
Definition at line 426 of file AssetRegistry.h.
|
explicit |
Creates an animation clip store backed by an optional asset manager.
| assetManager | Asset manager used to request animation payload loads, or nullptr for handle-only use. |
|
nodiscard |
Checks whether an animation clip handle refers to a live slot in this store.
| handle | Handle to validate. |
|
staticnodiscardprivate |
Builds the deduplication key for an animation source path and animation name.
| animationPath | Animation source path and animation name. |
|
nodiscard |
Gets or creates a stable handle for an authored animation source path.
| animationPath | Engine-relative source path and animation name. |
|
nodiscard |
Returns the authored animation path for an animation clip handle.
| handle | Handle to look up. |
|
nodiscard |
Resolves an animation clip handle to its loaded payload behind the manager boundary.
| handle | Handle to resolve. |
|
nodiscard |
Registers a runtime animation payload and returns its stable animation clip handle.
| animationPath | Engine-relative path and animation name used as the registry key. |
| animation | Animation payload to transfer to the attached animation asset manager. |
| void Engine::Core::AnimationClipStore::setAssetManager | ( | AssetManager * | assetManager | ) |
Sets the asset manager used when new animation handles request payload loading.
| assetManager | Asset manager to use, or nullptr to disable payload load requests. |
|
private |
Optional bridge used to request animation refs.
Definition at line 499 of file AssetRegistry.h.
|
private |
Deduplication map from keyFor() to slot index.
Definition at line 501 of file AssetRegistry.h.
|
private |
Slot storage indexed by AnimationClipHandle::index.
Definition at line 500 of file AssetRegistry.h.