animation
20 public commands in this category.
add_clip_keyframe
Add a keyframe to a property animation track. Creates the track if it does not exist.
Scope:
scene:write. Token cost: 0.- entityId string (required)
- target string (required)
- Property target (e.g. position_x, material_metallic, light_intensity)
- time number (required)
- Keyframe time in seconds
- value number (required)
- Property value at this keyframe
- interpolation string (optional)
- Interpolation mode (default linear)
create_animation_clip
Create a keyframe animation clip on an entity. The clip can animate transform, material, and light properties over time with user-defined keyframes.
Scope:
scene:write. Token cost: 0.- entityId string (required)
- Target entity ID
- autoplay boolean (optional)
- Auto-play when entering Play mode (default true)
- duration number (optional)
- Clip duration in seconds (default 2.0)
- playMode string (optional)
- Playback mode (default loop)
- speed number (optional)
- Playback speed multiplier (default 1.0)
get_animation_clip
Get the keyframe animation clip data for an entity, including all tracks and keyframes
Scope:
scene:read. Token cost: 0.- entityId string (required)
get_animation_graph
Get the animation graph state showing all node weights and speeds for an entity
Scope:
scene:read. Token cost: 0.- entityId string (required)
- Entity to query
get_animation_state
Get the current animation playback state for an entity, including active clip, speed, elapsed time, and loop status
Scope:
scene:read. Token cost: 0.- entityId string (required)
- Entity to query
list_animations
List all available animation clips on an entity. Returns clip names and durations.
Scope:
scene:read. Token cost: 0.- entityId string (required)
- Entity to query (must be a glTF model with animations)
pause_animation
Pause the currently playing animation on an entity
Scope:
scene:write. Token cost: 0.- entityId string (required)
- Entity with playing animation
play_animation
Play a named animation clip on an entity. Uses crossfade blending for smooth transitions between clips.
Scope:
scene:write. Token cost: 0.- clipName string (required)
- Name of the animation clip to play
- entityId string (required)
- Entity with animation clips (glTF model)
- crossfadeSecs number (optional)
- Crossfade duration in seconds (default: 0.3)
preview_clip
Start, stop, or seek the animation clip preview in Edit mode
Scope:
scene:write. Token cost: 0.- action string (required)
- entityId string (required)
- seekTime number (optional)
- Time to seek to (when action=seek)
remove_animation_clip
Remove the keyframe animation clip from an entity
Scope:
scene:write. Token cost: 0.- entityId string (required)
remove_clip_keyframe
Remove a keyframe from a property animation track by target and time
Scope:
scene:write. Token cost: 0.- entityId string (required)
- target string (required)
- Property target
- time number (required)
- Keyframe time to remove
resume_animation
Resume a paused animation on an entity
Scope:
scene:write. Token cost: 0.- entityId string (required)
- Entity with paused animation
seek_animation
Seek to a specific time in the current animation clip
Scope:
scene:write. Token cost: 0.- entityId string (required)
- Entity with animation
- timeSecs number (required)
- Time to seek to in seconds
set_animation_blend_weight
Set the blend weight for a specific animation clip (0.0-1.0). Used to blend multiple animations together.
Scope:
scene:write. Token cost: 0.- clipName string (required)
- Name of the clip to control
- entityId string (required)
- Entity with animation
- weight number (required)
- Blend weight (0.0 = no influence, 1.0 = full influence)
set_animation_loop
Enable or disable looping for the current animation on an entity
Scope:
scene:write. Token cost: 0.- entityId string (required)
- Entity with animation
- looping boolean (required)
- Whether animation should loop
set_animation_speed
Set the playback speed of animation on an entity
Scope:
scene:write. Token cost: 0.- entityId string (required)
- Entity with animation
- speed number (required)
- Playback speed multiplier (1.0 = normal, 2.0 = double speed, 0.5 = half speed)
set_clip_property
Update animation clip properties like duration, play mode, speed, or autoplay
Scope:
scene:write. Token cost: 0.- entityId string (required)
- autoplay boolean (optional)
- duration number (optional)
- playMode string (optional)
- speed number (optional)
set_clip_speed
Set the playback speed for a specific animation clip
Scope:
scene:write. Token cost: 0.- clipName string (required)
- Name of the clip to control
- entityId string (required)
- Entity with animation
- speed number (required)
- Playback speed multiplier (1.0 = normal, 2.0 = double speed)
stop_animation
Stop all animations on an entity and reset to bind pose
Scope:
scene:write. Token cost: 0.- entityId string (required)
- Entity with playing animation
update_clip_keyframe
Update an existing keyframe's value, interpolation, or time
Scope:
scene:write. Token cost: 0.- entityId string (required)
- target string (required)
- time number (required)
- Current keyframe time (for lookup)
- interpolation string (optional)
- newTime number (optional)
- Move keyframe to new time (optional)
- value number (optional)
- New value (optional)