Skip to main content
Flow Core Documentation
Menu

Flow Character

States, Gestures & Markers

Separate sustained animation identity, bounded actions, and animation-timed gameplay events.

Audience
Animation and gameplay developers
Time
15 minutes
Requires
A configured Flow Character and animation clips
Modules
Flow Character
On this page

Flow Character separates animation into three responsibilities. A State is sustained identity, a Gesture is a bounded action, and a Marker is a semantic event at an authored animation moment.

Choose the correct owner

ConceptUse forExamples
StateOngoing animation identity or modeLocomotion, stance, swimming, aiming pose
GestureTemporary action that can enter, play, and exitAttack, pickup, reload, cast, emote
MarkerGameplay timing tied to clip progressFoot contact, hit frame, grab, release, landing

Do not replace a Marker with a generic Wait when animation speed, blending, or clip selection can change. The Marker remains attached to the authored animation moment.

Video · 0:51Zombie Walk StateWatch a sustained locomotion State drive a visible character result.

Author a Gesture

  1. Create Flow Core > Character > Gesture.
  2. Choose Open Full Configuration > Main. Assign a Tag when several Gestures belong to one conflict group.
  3. Set Priority and the intended conflict behavior.
  4. Apply an AvatarMask when the action should affect only part of the body.
  5. Open Segments and configure Entry, Main, and Exit clips as needed.
  6. Open Motor for overrides only where the action truly owns movement behavior.
  7. Play it from a graph with Character Play Gesture.

Pickup Gesture Main settings appear above its Segments page with Entry, Main, and Exit clips.

Open Full Configuration shows Main above Segments. Pickup Gesture uses the Pick Up Tag, Priority 0, and no Avatar Mask; its Main clip is Pick Up, with no Entry or Exit clip.

Add a Marker

  1. Open the State or Gesture clip track that owns the event.
  2. Add a Marker at the required normalized time.
  3. Choose a semantic limb such as LeftFoot or RightHand, or set Limb to Custom and assign an Id such as hit, pickup, or release.
  4. Configure cooldown behavior when repeated crossings must be filtered.
  5. Add a Character Animation Marker Trigger to the relevant event graph and match its Marker limb and, for Custom, its Id.
  6. Connect the gameplay Instructions that should run.

Limb routes and Custom Id routes are alternatives. A RightHand route matches the limb; a Custom route matches its Id.

Main track Markers and matching Character Animation Marker Triggers compare Right Hand above with Custom pickup below.

Each row pairs a Main track Marker with its dedicated Trigger: Right Hand above, Custom with Id pickup below. Both use Normalized Time 0.45; only Custom exposes Id.

Coordinate with gameplay

For an attack, normal Flow can start the Gesture, the Marker can identify the hit frame, and Flow Stats can apply damage. The Gesture owns animation, the Marker owns timing, and Stats owns the numeric result.

flowchart LR F["Flow starts Gesture"] --> G["Gesture plays"] G --> M["Marker: hit"] M --> E["Event Graph"] E --> R["Gameplay result"]

Common mistakes

  • Using a Gesture for locomotion that should persist as a State.
  • Giving conflicting Gestures identical ownership without a Tag, mask, or priority rule.
  • Applying a whole-Gesture motor override when only one clip segment owns the rule.
  • Filtering a Marker with the wrong limb or custom ID.
  • Evaluating Marker Conditions outside the character animation event context.