Live2D Animation & Mapping
This page reflects the current Live2D runtime used by AnySoul today: reusable clips, rule-owned priority, scoped base behaviors, and runtime arbitration by priority tier.
The Current Authoring Model
Section titled “The Current Authoring Model”Think in three layers:
- Clips describe reusable animation assets
- Rules decide when clips should play
- Base Behaviors schedule long-lived background playback for
idleandactivescopes
The Full Editor is the recommended place to author all three.
Playback Stack
Section titled “Playback Stack”At runtime, playback resolves in this order:
- authored neutral pose from Parameters
- optional legacy idle-motion participation
- one active base-behavior scope:
idleoractive - every currently matched rule
- lip sync / focus dispatch after parameter resolution
For a single parameter, writes are grouped by priority tier. The important part:
- higher priority tiers resolve before lower ones
- inside one tier,
MultiplyandAddevaluate beforeOverride Overrideconsumes remaining weight- a higher-tier full-weight
Overridecan leave zero room for lower tiers
That means a low-priority base wobble will not leak through if a higher-priority rule fully owns that same parameter.
Clips are reusable assets. A clip can be triggered by many rules or many base behaviors.
Important Current Rule
Section titled “Important Current Rule”Runtime priority does not belong to the clip asset anymore.
Priority is owned by:
- the Rule
- the Base Behavior
If you see legacy references to “clip priority”, treat them as old terminology.
Ways to Create Clips
Section titled “Ways to Create Clips”- Add Clip for manual authoring
- Create From Expression to import
.exp3.json - Import Motion As Clip to convert
.motion3.json - Template for common setups such as gaze wander or breathing
What a Clip Contains
Section titled “What a Clip Contains”- parameter tracks
- keyframes
- playback mode
- end behavior
- release configuration
- per-track blend modes
- per-track modifiers
Playback Modes
Section titled “Playback Modes”| Mode | Use it for |
|---|---|
One Shot | reactions, gestures, short expression changes |
Loop | sustained states like speaking cycles or ambient motion |
Repeat N | exact counts such as double nods or triple blinks |
Completion and Release
Section titled “Completion and Release”Clips also define:
- whether they are bound to trigger duration or should complete even if the trigger ends
- whether tracks should stop immediately or hold then release
- how long the release should take
Tracks, Blend Modes, and Modifiers
Section titled “Tracks, Blend Modes, and Modifiers”Every clip is really a set of parameter tracks.
Track Blend Modes
Section titled “Track Blend Modes”Blend mode is a track-level choice:
| Mode | Behavior | Typical use |
|---|---|---|
Override | claims ownership of the parameter | expression poses, action poses, “freeze head” clips |
Add | layers an offset on top | breathing, sway, accent motion |
Multiply | scales the current value | special effects, amplitude shaping |
Use Add only for motion that should genuinely layer. If the motion must stop whenever a stronger clip takes control, use Override at the right priority tier instead.
Track Modifiers
Section titled “Track Modifiers”Modifiers run on top of keyframe interpolation:
keyframed value -> modifier chain -> final track writeCurrent modifier types:
WiggleDriftSinePulseSpringLoopNoiseClamp
Use Mod ON/OFF in the inspector to preview the raw keyframes versus the final procedurally modified result.
Virtual Focus
Section titled “Virtual Focus”The virtual parameters:
__focus_x____focus_y__
can be animated just like normal tracks and are ideal for gaze wander clips.
Rules connect runtime state to clips.
Condition Types
Section titled “Condition Types”Current rule conditions can match:
- emotion
- action
- tool call
- text
- thinking
- idle
For text-triggered rules, the runtime can distinguish between message text and thinking text. Use the Sequence Tester to validate that path instead of guessing.
All-Match Semantics
Section titled “All-Match Semantics”AnySoul uses all-match playback:
- every satisfied rule fires
- each rule can play multiple clip groups in parallel
- multiple rules can be active at the same time
This is why good parameter ownership matters.
What a Rule Owns
Section titled “What a Rule Owns”A rule owns:
- priority (
0 idle,1 normal,2 emotion,3 force) - one or more clip groups
- each group’s selection mode
- each group’s weight
- each group’s timeScale
Clip Groups
Section titled “Clip Groups”Clip groups are how one rule chooses clip variants.
- groups play in parallel with each other
- inside a group, selection can be
randomorsequential - each group can scale its playback strength with
weight - each group can speed up or slow down with
timeScale
Base Behaviors
Section titled “Base Behaviors”Base Behaviors are the current answer for long-lived ambient playback.
Scopes
Section titled “Scopes”Each base behavior belongs to one scope:
Idle BaseActive Base
Only one scope is active at a time, depending on whether non-idle rules are currently matched.
Base behaviors can schedule clips with:
Loop one clipPick one per idle sessionRandom playlist
They also expose:
- cycle transition duration
- handoff transition duration
- scope transition duration
- priority
Legacy Idle Motion
Section titled “Legacy Idle Motion”If your model has a bundled legacy idle motion, you can optionally let it participate in idle-base playback. This is configured in the Rules area, not in clip authoring.
Sequence Tester
Section titled “Sequence Tester”The Sequence Tester is the best way to validate real playback behavior without waiting for live chat output.
Use it to simulate:
- emotion
- action
- tool call
- text
- thinking
- explicit idle steps
It shows the current runtime interpretation, including:
- current state
- current base scope
- whether the current frame is
base onlyorbase + rule overlay - which rules matched
- which base behaviors matched
While a sequence is running, the inspector also shows Parameter Control so you can see which writer currently owns a parameter and which writers are suppressed.
Timeline Preview Base
Section titled “Timeline Preview Base”In the inspector, Preview Base changes what the preview clip is evaluated against:
| Mode | Meaning |
|---|---|
Baseline | clip/rule against only the authored neutral pose |
Idle Base | preview on top of idle-scope base behaviors |
Active Base | preview on top of active-scope base behaviors |
Use this constantly when tuning subtle overlays.
Practical Authoring Tips
Section titled “Practical Authoring Tips”- Put breathing, sway, and gaze wander in Base Behaviors, not ordinary rules.
- Put reactions and explicit state poses in Rules.
- Use
Overridefor parameters that must not inherit lower-priority motion. - Use
Addfor secondary motion that should survive same-tier layering. - If a pose looks correct in isolation but wrong in runtime, check:
- rule priority
- base-behavior priority
- track blend mode
- preview base mode
- parameter-control inspector
Next Steps
Section titled “Next Steps”- Live2D Getting Started for the end-to-end setup flow
- Parameters Reference for baseline tuning, lip sync, motions, expressions, and parts
- Live2D Curve Editor for graph editing and timeline shortcuts