Skip to content

motion: the animation and physics cycle tested end to end on a real person (idle, walk, run, struck, down, up, walk), held to how a person moves #850

Closed

Description

@nicolas-maman

The owner, 2026-10-21, after watching the motion showcase and Siltreach's camp: "make sure the motion makes sense, these are humans, but they move like springs or robots, walking and running seem off, and is this going to integrate with animations in a smooth way like AAA do? we need that cycle correctly tested".

Why nothing catches it today

  • Every ae3d human motion test, the plaza and the showcase run on the box man (tests/fixtures/gltf/humanoid.glb). Its Walk and Run are gaits made by tools/make_gltf_fixture.ae (locomotion: feet skate through turns (planted foot drifts 10-14% of the way, 0.2% straight) #611), not captured from a person.
  • The get-up, kneel and sit are poses keyed in code (pose_planned, pose_stage), with timing chosen in code.
  • The physical side is spring-driven: muscles at 20 Hz, damping 1.0, arms pinned at 30 Hz while holding.
  • The tests bound pops, falls and standing up. None of them measures ringing, jerk or gait against a person, and none runs the whole cycle.

The cycle

idle, walk, run, struck (a light blow keeps it moving; a hard one puts it down), down, get up, idle, walk, run. Swept over stride moments and shove directions, not a few picked moments.

What it is held to, per phase and per change

what measure bound
pops each drawn bone's turn speed never over the clips' own fastest
continuity the drawn hips' velocity through ANIMATED to POWERED and back no step past what the accelerations allow
springs overshoots and their decay after each settle at most one overshoot, as a person settles
robot normalized jerk of the hands and hips (Hogan and Sternad 2009) against the authored clip doing the same thing: LayToIdle for the get-up
gait cadence and stride length against speed; toe skating; both feet down at times when walking, both off the ground at times when running human gait data; 5 mm
recovery from the blow to walking again named per case

First targets, from Siltreach (git-a6, on e399f6a)

The fixes come after the numbers. The likely ones are captured gaits on the tested figure; the get-up handing into an authored clip with the bodies following it, as PuppetMaster recovers into the animator's get-up and GTA's NaturalMotion get-ups blend into authored animation; and damping whatever rings. Part of #790 and #509.

Activity

  1. nicolas-maman commented on Oct 22, 2026

    @nicolas-maman
    CollaboratorAuthor

    Moved under the animation epic #853, milestone #854: the cycle test runs on the Quaternius mannequins and their real clips, with the metrics that milestone builds.

  2. nicolas-maman commented on Oct 31, 2026

    @nicolas-maman
    CollaboratorAuthor

    From the owner, watching the showcase on PR #891: "Running looks good but not realistic enough; walking looks good but not realistic enough."

    What this issue's cycle test should hold the gaits to, so "realistic" is a number and not a feeling: the authored Quaternius walk and run against 100STYLE's captured gaits (already in tests/fixtures/people/100style) on human-likeness measures, among them the shoulders' counter-rotation (the sprint turns its chest 40 degrees off its hips; a person 15 to 25), the pelvis's drop and roll, the head's bob, and the arms' swing against the legs. Then the showcase's walkers and runners move onto captured gaits through the motion-matching node where the authored clips fall short.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions