nishi code wiki / research / character body physics
Character body physics, animation and secondary dynamics
SOTA census · compiled 2026-08-01 · 5 axes · ~38 sourced claims · 8 declared gaps
lineage: forked from research_rtrender parent domain: embodiment
Claims are labelled SHIPPING / RESEARCH / ANNOUNCED / ABANDONED. Gaps are declared UNVERIFIED rather than guessed. Numbers marked [computed] or [synthesis] are derived estimates, not measurements.
1. Learned physics control — the lineage and the honest WASM verdict
| Model | Scale / cost | What it added | Status | Source (date) |
|---|---|---|---|---|
| DeepMimic | MLP (1024, 512) hidden ≈ 0.8–1.5M params; 30 Hz control over a 1.2 kHz sim | Per-clip RL motion tracking | RESEARCH | arxiv.org/abs/1804.02717 (2018) |
| AMP | Same MLP scale | Adversarial motion prior replaces the tracking reward | RESEARCH | arxiv.org/abs/2104.02180 (2021) |
| PHC | Progressive multiplicative control policy (new capacity per hard-motion cluster) | One controller imitates ~all of AMASS + fall recovery | RESEARCH | github.com/ZhengyiLuo/PHC (ICCV 2023) |
| PULSE | Distils PHC into a 32-dim latent motion space | Distillation is load-bearing: 97.1% AMASS-test imitation with distillation vs 32.6% pure-RL | RESEARCH | arxiv.org/abs/2310.04582 (ICLR 2024) |
| MaskedMimic | Transformer-VAE, tens of M params | Unified control as masked motion inpainting — driven by any subset of {keyframes, joints, text, objects} | RESEARCH | arxiv.org/abs/2409.14393; dl.acm.org/doi/10.1145/3687951 (SIGGRAPH Asia 2024) |
| SONIC | Tracking scaled 1.2M → 42M params, 100M+ frames / 700 h mocap, 21k GPU-h; policy inference 1–2 ms, kinematic planner 12 ms (NVIDIA hardware, unspecified) | The “foundation controller” moment; one token space serves VR teleop + VLA | RESEARCH | arxiv.org/abs/2511.07820; nvlabs.github.io/GEAR-SONIC/ (2025-11) |
Training lives in NVIDIA ProtoMotions, the now-standard open framework (SHIPPING SDK, nvlabs.github.io/ProtoMotions/user_guide/experiments.html, 2024–25). The 2025–26 successor wave: PDP — expert RL trackers behaviour-cloned into one diffusion policy (dl.acm.org/doi/full/10.1145/3680528.3687683, SIGGRAPH Asia 2024); SuperPADL — progressive supervised distillation to 5000+ language-directed skills, real-time on a consumer GPU (arxiv.org/pdf/2407.10481, 2024); CLoSD — a real-time autoregressive motion-diffusion planner (as few as 10 diffusion steps) closed-loop with an RL tracker (arxiv.org/abs/2410.03441, ICLR 2025 spotlight); UniPhys (arxiv.org/pdf/2504.12540, 2025-04); PARC — a self-bootstrapping generator↔tracker data flywheel for parkour (dl.acm.org/doi/10.1145/3721238.3730616, SIGGRAPH 2025); BFMTrack (arxiv.org/pdf/2606.25056, 2026-06); InterPrior (arxiv.org/pdf/2602.06035, 2026-02); MaskAdapt (arxiv.org/pdf/2603.29272, 2026-03); and NVIDIA's 21 SIGGRAPH 2026 papers including MotionBricks, one neural model animating game characters and driving a Unitree G1 robot (xenospectrum.com/en/nvidia-siggraph-2026-physical-ai/, 2026-07). Graphics↔humanoid-robotics convergence is now the field's centre of gravity.
2. What shipping games actually use (2025–26)
| Thing | Status | Source (date) |
|---|---|---|
| Motion matching — UE 5.4 production-ready; “battle-tested in Fortnite Battle Royale… shipped on all platforms from mobile to console, running on all 100 player characters plus NPCs” | SHIPPING | unrealengine.com/en-US/blog/unreal-engine-5-4-is-now-available (2024-04); lineage: For Honor gdcvault.com/play/1023280 (GDC 2016), TLOU2 (2020) |
| Euphoria-class active ragdoll — a Rockstar monopoly; no other 2025/26 AAA ships full behavioural active ragdoll | SHIPPING | gta.fandom.com/wiki/Euphoria; gtaboom.com former-Rockstar-animator interview (2025, secondary) |
| GTA VI — Dynamic-Motion-Synthesis-lineage stack rebuilt for current gen | ANNOUNCED | same gtaboom.com interview (2025); release 2026-11-19 |
| skate. — physics-based skating + signature ragdoll as core gameplay (EA Full Circle, F2P, PS/Xbox/PC) | SHIPPING | news.ea.com press release (early access 2025-09-16) |
| DReCon — RL policy tracks motion-matching output on a simulated ragdoll, “high responsiveness at low runtime cost” | RESEARCH | ubisoft.com La Forge (SIGGRAPH Asia 2019) |
| Learned Motion Matching — NN-compressed MM database | RESEARCH | dl.acm.org/doi/abs/10.1145/3386569.3392440 (TOG 2020) |
| ML-assisted motion matching in Far Cry 6 tooling | SHIPPING (tooling) | 80.lv/articles/ubisoft-explained-ai-driven-motion-matching-technique-used-in-far-cry-6 (2021) |
| EA patent: periodic-autoencoder motion alignment — ML animation entering AAA pipelines | GRANTED | USPTO 12403400 (2025) |
Takeaway: no shipped title yet uses a learned physics policy as primary character control. The shipped recipe is motion matching + partial ragdoll blending + IK. Motion matching itself is a kNN search over pose+trajectory feature vectors — no floats required at runtime, no ML; the real cost is mocap curation. See also “Ragdoll Motion Matching”, GDC ML Summit (gdcvault.com/play/1026712).
3. Simulation methods on a tiny integer budget
| Method | Status | Source (date) |
|---|---|---|
| XPBD — compliance-based constraints, timestep-independent stiffness; substeps beat solver iterations (60 Hz frame → 2–4 substeps × 1 iteration) | RESEARCH, widely adopted | matthias-research.github.io/pages/tenMinutePhysics/09-xpbd.pdf (2016/2022) |
| VBD — vertex-level Gauss-Seidel block descent on implicit Euler; unconditionally stable, massively parallel | RESEARCH | arxiv.org/pdf/2403.06321 (TOG 2024) |
| AVBD — augmented Lagrangian → hard constraints: rigid stacking, friction, articulated bodies with joint limits, stiff-soft coupling; shown live at Real-Time Live! (“Crazy Fast Physics”) | RESEARCH | graphics.cs.utah.edu/research/projects/avbd/; dl.acm.org/doi/10.1145/3731195 (SIGGRAPH 2025-08) |
| Featherstone — reduced coordinates, O(n), zero joint drift for a ~20-DOF ragdoll; what MuJoCo/Isaac use | RESEARCH, classic | standard texts; harder in fixed point (mass-matrix conditioning, trig) — overkill vs maximal-coordinate XPBD+joints for game NPCs |
| Photon Quantum — full deterministic physics on Q48.16 fixed point (FPVector/FPQuaternion); shipped Stumble Guys, LEGO Brawls | SHIPPING | doc.photonengine.com/quantum/v2/quantum-intro; blog.photonengine.com/photon-quantum-is-now-free-for-development/ (2024–25) |
| BEPUphysics1int (C# fixed-point 3D) · SG Physics 2D (Godot) | SHIPPING SDK | github.com/sam-vdp/bepuphysics1int; gitlab.com/snopek-games/sg-physics-2d (n.d., repos) |
nx_collide2d's swept-integer discipline is the same family.4. Cloth, hair and flesh secondary dynamics
| Thing | Status | Source (date) |
|---|---|---|
| Cloth — XPBD remains the real-time default; VBD beats PBD in throughput/stability in a Unity head-to-head | RESEARCH | mdpi.com/2076-3417/14/23/11072 (2024) |
| Strand hair — id/MachineGames shipped strand-based hair as the ONLY human hair solution, at 60 Hz cross-platform, in Indiana Jones and the Great Circle; full GPU raster/shading pipeline | SHIPPING | advances.realtimerendering.com/s2025 “Strand Hair in IJGC” slides (2025-08) |
| Neuralocks — real-time neural hair simulation | RESEARCH | arxiv.org/pdf/2507.05191 (2025-07) |
| Spring-Decomposed Skinning — real-time secondary jiggle/follow-through from helper spring bones on the rig; no neural net; a direct fit to a 104-joint LBS engine | RESEARCH | onlinelibrary.wiley.com/doi/10.1111/cgf.70209 (CGF 2025) |
| Musculoskeletal-driven skin deformation NN · Hierarchical Neural Skinning | RESEARCH | dl.acm.org/doi/10.1145/3658135 (TOG 2024); dl.acm.org/doi/10.1145/3728300 (2025-05) |
| UE 5.6 Chaos Flesh — tet-based muscle sim in a real-time engine | ANNOUNCED | dredyson.com (2025 — secondary source, flagged UNVERIFIED below) |
| FreeMusco — motion-free latent control for morphology-adaptive musculoskeletal locomotion | RESEARCH | arxiv.org/pdf/2511.14205 (2025-11) |
Verdict: full muscle simulation does not transfer to this budget. The pattern that does is offline sim → cheap runtime approximation — bake muscle/flesh behaviour into joint-driven secondary dynamics (spring bones, ML-deformer pattern). The low-budget hair transfer is dozens of guide strands as Verlet/XPBD chains + skinned interpolation — a nx_softdyn-shaped problem.
5. What this means for the Nishi stack
Constraint filter: proprietary language compiled to WASM · integer/fixed-point math core · WebGL2 · no third-party physics engine (no PhysX/Havok/Jolt) · reimplementation from papers only.
| Substrate in hand | State |
|---|---|
| NXA skinned bodies — 14,164 verts / 28,092 tris / 104 joints / 17.9 s mocap, linear blend skinning in the vertex shader | live |
nx_softdyn — general spring-damper secondary-dynamics solver | gate-proven 7/7, not yet bound to any geometry — nothing visibly jiggles |
nx_collide2d — swept continuous 2D collider | 8/8, mutation-proven |
| RTX 5080 16GB | offline training only — never a runtime dependency |
| # | Technique | Payoff / cost | Exit criterion |
|---|---|---|---|
| 1 | Spring-bone secondary dynamics on the existing rig (SDS pattern, CGF 2025) | Jiggle, inertia, follow-through, hit-twitch via helper joints driven by nx_softdyn. Days; zero new solver; fixed-point trivial. Bodies stop looking dead. | nx_softdyn bound to ≥8 helper joints on the NXA body; visible follow-through in the 17.9 s mocap replay at 60 fps; replay bit-identical across two runs. |
| 2 | Motion matching for NPC locomotion | Proven on mobile-class hardware for 100+ characters (Fortnite/UE 5.4). kNN over integer pose+trajectory features — no floats, no runtime ML. Real cost = mocap curation. | Live segment selection from the mocap DB; transition pose-error under a declared integer threshold; ≥10 NPCs at 60 fps in WASM. |
| 3 | Passive XPBD ragdoll, fixed point | Deaths, falls, impacts. 12–20 bodies, capsules, joint limits, 2 substeps @ 60 Hz. Photon Quantum Q48.16 proves the regime. Weeks on top of softdyn's PBD core. | Ragdoll drops, settles, and stays settled: joint limits hold, no overflow, bit-exact determinism gate across runs. |
| 4 | Active ragdoll = ragdoll + motor constraints toward the animation pose + hand-authored stumble/brace/grab/get-up state machine, blended per body part | The Euphoria-class MVP and the literal “NPCs are real body physics” milestone — no ML required. Adopt AVBD hard joints if XPBD drifts. | A character pushed mid-walk recovers or falls believably and gets up; per-body-part blend live; 60 fps sustained. |
| 5 | Utility-AI daily-life layer (NPC-minds scope, listed for build order) | Needs/schedules/affordances + event memory, all integer scores; inZOI's ~600-datapoint pattern shows the ceiling with zero runtime LLM (nvidia.com ACE, 2025-03). | Hundreds of NPCs run coherent daily schedules for a full sim-day with zero runtime ML. |
| 6 | DReCon-class learned tracking policy | Robust balance/push-recovery that rung 4 can't hand-author. Train AMP-style ~1M-param MLP on the RTX 5080 against a headless build of THE fixed-point sim (or PDP-style BC on in-engine rollouts); quantise int8. | Policy tracks mocap in-engine under perturbation; <1 ms/NPC at 30 Hz control in WASM, measured (not computed). |
| 7 | LLM NPC dialogue/replanning (NPC-minds scope) | Minitron-class 0.5–2B, server-side or WebGPU worker; the LLM writes/edits rung-5 schedules, never ticks the sim. | Free-text goal edit changes an NPC's schedule with the render loop unaffected. |
| 8 | Distilled foundation controller (MaskedMimic/SONIC → SuperPADL/PDP-style student) | Text/keyframe-conditioned full-body skills in one small policy. Endgame; field trajectory (SONIC 1.2M tier, MotionBricks) says this commoditises via ProtoMotions checkpoints by ~2027. | Only after rungs 3+4+6 are green and the training loop against the in-house sim is proven; one policy serves ≥3 distinct skill families in-engine. |
Declared UNVERIFIED — do not treat as measured
- All WASM throughput figures ([computed]: 1.6 MFLOP/inference, <5% of a core, low tens of µs/NPC XPBD) are arithmetic estimates. No int8 MLP or integer XPBD benchmark has been run in the Nishi WASM runtime.
- SONIC's 1–2 ms policy inference was reported without the GPU model; it is not evidence about CPU/WASM latency.
- UE 5.6 Chaos Flesh rests on a secondary source (dredyson.com); Epic release notes were not checked.
- The GTA VI Euphoria-lineage rebuild rests on one ex-Rockstar animator interview (gtaboom.com, 2025); Rockstar has not confirmed the stack.
- Exact parameter counts for PHC and MaskedMimic were not captured — treat “progressive capacity” and “tens of M” as order-of-magnitude.
- Whether any 2025/26 title beyond skate. and GTA VI ships active ragdoll as a core mechanic was not swept.
- In-production use of DReCon / Learned Motion Matching beyond Ubisoft's own publications: no independent evidence either way.
- BEPUphysics1int and SG Physics 2D shipped-title lists were not verified; they are cited as fixed-point precedent code, not adoption evidence.
Method. Primary source: a dedicated research agent's July/August 2026 web sweep across six question axes (learned control, shipping practice, simulation methods, cloth/hair/flesh, NPC minds, adoption ladder); its claims, numbers and URLs are carried verbatim here. The agent's task-output file was written as 0 bytes by the harness; the full report was recovered from its JSONL transcript. No fresh URL-by-URL re-verification pass was run for this brief — anything that failed the sweep's own sourcing bar is listed above rather than smoothed over. New measurements in the Nishi WASM runtime (item 1) are what would most change the conclusions.