vkmEngine 1.0.0
A C++ game engine · vkmengine.com
Loading...
Searching...
No Matches
Vkm::Engine::AnimationClipAsset Struct Reference

A baked animation: every bone's keys, in six flat arrays. More...

#include <animation_clip_asset.h>

Inheritance diagram for Vkm::Engine::AnimationClipAsset:
Vkm::Engine::Resource

Public Attributes

std::string skeleton
 Name of the rig whose bone order bones addresses.
float duration = 0.0f
 Length in seconds.
std::vector< ClipBone > bones
 Parallel to the skeleton's bones.
std::vector< ClipMarker > markers
 Instants the clip announces as the head passes them, in time order.

Additional Inherited Members

Public Member Functions inherited from Vkm::Engine::Resource
 Resource (const Resource &other)
 Duplicate other's contents and name, but not its identity.
const std::string & name () const noexcept
 Serializable identity; non-empty and unique within its type once added.
uint64_t uid () const noexcept
 Process-unique id stamped by add(); names the asset, not the slot it sits in.
uint64_t version () const noexcept
 Change counter the backend keys GPU re-uploads on; moved by commit().
bool isHidden () const noexcept
 Added by ResourceManager::addPrivate: not user-facing, not saved.
nlohmann::json & sourceJson ()
 Mutable source JSON, allocating a null document if there is none.
const nlohmann::json & sourceJson () const
 Const source JSON; asserts hasSource(), so guard the call with it.

Detailed Description

A baked animation: every bone's keys, in six flat arrays.

Not AnimationTrack<T>: six flat arrays are bulk-writable and cache-linear, and baked keys need no easing. bones is parallel to the named skeleton's bone array, bound at cook time.

Member Data Documentation

◆ duration

float Vkm::Engine::AnimationClipAsset::duration = 0.0f

Length in seconds.

Stored, not derived from the last key, so a held tail is kept.

◆ markers

std::vector<ClipMarker> Vkm::Engine::AnimationClipAsset::markers

Instants the clip announces as the head passes them, in time order.

On the clip, not the Animator: every rig playing the walk gets its footsteps.


The documentation for this struct was generated from the following file: