Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Expression fades

Lives in: character pack → composition_transitions

Two different fades:

KindWhat it isWhere you set it
Show / hideCharacter enters or leaves a placeScript sugar / char — [hana left fade 0.4]
Expression swapSame person, new look while already on stagePack composition_transitions (or swap_mode on the command)

This page is the second kind.

Pack policy

"composition_transitions": {
  "default": { "kind": "fade", "duration": 0.2, "swap_mode": "auto" },
  "pairs": {
    "happy->angry": { "kind": "fade", "duration": 0.4, "swap_mode": "crossfade" }
  }
}
KeyEffect
defaultUsed when no more specific rule matches
pairs"from->to" overrides (also wildcards like happy->*, *->angry, *->*)
from / toMaps keyed by expression id → same payload shape

Payload

FieldValues
kindinstant, fade, slide_up / down / left / right
durationSeconds
swap_modeauto, in_only, crossfade, out_in, cross_slide

auto: fade → crossfade; slide → in_only; otherwise in_only.

Resolve order: exact pair → from-wildcard → to-wildcard → *->* → from map → to map → default → instant.

When the command wins

If the char command names a transition (transition, transition_in / transition_out, or a duration), that command wins for that beat — including show/hide.

If the command says nothing about transitions:

  • Expression change on someone already visible → pack composition_transitions
  • Otherwise → instant

Force blend style with "swap_mode": "crossfade" (and friends) on the command when you need a one-off.

Usually you need

WantDo
Soft look changes by defaultPack default fade ~0.2s
Dramatic one pairpairs entry for that from->to
Instant this beatCommand transition: "instant" or omit pack policy

Next

Talking and focus