LDKKeyframeEventFn

Called synchronously for an animation marker.

typedef void(*LDKKeyframeEventFn)(LDKEntity root, const LDKKeyframeEvent *event, void *user);

Parameters

root
Entity driving the animation.
event
Marker payload; pointer is valid only during the callback.
user
Opaque callback context.

LDKKeyframeEventValueType

typedef enum LDKKeyframeEventValueType{
  LDK_KEYFRAME_EVENT_INTEGER=0,
  LDK_KEYFRAME_EVENT_STRING
}LDKKeyframeEventValueType;

ldk_keyframe_entity_path

Compute the path of a descendant relative to an animation root.

LDK_API bool ldk_keyframe_entity_path(
 LDKEntity root,
 LDKEntity target,
 u64 *out_path
);

Parameters

LDKEntity root
Animation hierarchy root entity.
LDKEntity target
Descendant entity whose relative path is requested.
u64 *out_path
Receives the relative hash on success.

Returns

True if target belongs to the transform subtree rooted at root.

ldk_keyframe_path_child

Extend a relative hierarchy path with a child name hash.

LDK_API u64 ldk_keyframe_path_child(
 u64 parent_path,
 u64 name_hash
);

Parameters

u64 parent_path
Existing hash relative to the animation source.
u64 name_hash
Nonzero persistent entity name hash.

Returns

Deterministic path hash, or zero for invalid inputs.

ldk_keyframe_path_root

Return the reserved path hash of an animation source root.

LDK_API u64 ldk_keyframe_path_root(void);

Returns

Stable root hash used for relative track bindings.

ldk_keyframe_target_resolve

Resolve a relative path hash to exactly one descendant.

LDK_API bool ldk_keyframe_target_resolve(
 LDKEntity root,
 u64 path,
 LDKEntity *out
);

Parameters

LDKEntity root
Animation hierarchy root entity.
u64 path
Hash relative to the animation source root.
LDKEntity *out
Receives the resolved entity.

Returns

True if the path resolves unambiguously. Duplicate matching paths fail.