Research & Innovation

RLMuscle Simulates 194 Muscles at 18 ms a Frame So Animators Stop Hand-Tuning Activations

A reinforcement-learning controller finds per-muscle activations from reference motion, an EMG prior steers it toward real human recruitment, and a volumetric solver produces the bulge.

RLMuscle was posted to arXiv on 21 October 2026 (arXiv:2610.30033) by Chunlei Li, Siyuan Yu, Yang Gao, Shuai Li, Peng Yu, Aimin Hao and He Wang, from Beihang University and University College London. The Comments field gives 12 pages and a project page and names no venue, so this is an unreviewed preprint.

It targets a specific, unglamorous production cost.

The problem

Body deformation from muscle contraction is a large part of why a character reads as flesh rather than a shell. The paper’s statement of the status quo matches what anyone who has rigged a creature will recognise:

in most 3D animation pipelines artists have to manually specify muscle activations, which is time-consuming and gives no guarantee of physical realism

Two separate complaints there. Hand-authoring activations is labour. And hand-authored activations are not physically consistent with the motion they accompany — the arm swings because an animator moved it, and the bicep bulges because an animator keyed the bulge, and nothing connects the two.

The approach

The contribution is a two-stage arrangement that keeps one physical law across both stages.

  1. A reinforcement-learning controller discovers per-muscle activations that track reference motions, with no manual tuning.
  2. The controller is trained against a fast 1D Hill-type surrogate, kept inside the RL control loop for speed.
  3. A 3D volumetric simulation then produces the final deformation — driven by the same Hill-type constitutive law.

That third point is the design decision that matters:

Because both stages share the very same constitutive law, the muscle deformation is produced by the same activations that generated the motion.

So the bulge is not a separate artistic layer applied over the animation. It is the visible consequence of the same activation signal that produced the movement. The paper notes that existing RL muscle controllers stop at 1D muscles; keeping the 1D model as a surrogate and handing off to a volumetric solver under a shared law is the step beyond that.

There is also an electromyography (EMG) prior, from measured data, which steers the solution toward real human muscle recruitment. Muscle activation is a redundant problem — many activation patterns produce the same joint motion — so without a prior the controller is free to pick biomechanically absurd combinations that happen to track the reference. The EMG prior is what keeps the answer human.

The solver

For the simulation side the team proposes a geometric multigrid for Extended Position-Based Dynamics (XPBD), built on a coarse tetrahedral cage with barycentric-coordinate prolongation, closing a V-cycle on tetrahedral meshes. Within that GPU-parallelised solver they inject the same Hill-type force–length law as an energy-based fiber constraint, turning per-fiber activation into contraction and bulging.

For practitioners, the short version: XPBD is the position-based family that real-time engines already use, and the multigrid is what makes a dense tetrahedral muscle mesh converge fast enough to be useful.

The numbers

  • 194-muscle full human body
  • Motions demonstrated: walk, kick, swim, overhead-squat and others
  • 18 ms per frame for the full-body model on a single RTX 4090

18 ms on one consumer card is the figure that makes this interesting rather than merely rigorous. That is roughly 55 frames per second for a full volumetric muscle simulation of an entire body on hardware a freelance artist might own. It is not a render-farm result.

The claimed benefit is “character animation that is not only visually convincing but also biomechanically grounded” — which, if it holds up, means an animator directs motion and gets the correct deformation for free rather than authoring it twice.

Code: real, and unlicensed

The project page is live at chunleili.github.io/project-page-rlmuscle, with Video, Code, Data and Slides links. We checked the code and data rather than taking them on trust:

  • github.com/chunleili/rlmuscleV2 exists — created 9 May 2026, last pushed 21 October 2026, the day of the arXiv submission. 2 stars.
  • The assets are a real Hugging Face dataset, chunleili/rlmuscleV2-assets, created 30 May 2026.
  • The repository has no licence.

The repository and data being genuinely there puts this ahead of a benchmark we looked at this morning whose advertised code is a 404. But “no licence” is not a neutral state. Code published without a licence is, by default, not grantable for reuse — a studio’s legal team will read an unlicensed repository as off-limits, however public it is. For research this is usually an oversight rather than a decision, and it is a one-line fix.

Worth noting on novelty: the repository dates from May and the project video went up on 3 August 2026, so the work has been public for months. The preprint is the new artefact, not the system.

Caveats

No peer review. No comparison figures reproduced here, because the abstract does not give the baseline numbers and we have not run it. And the EMG prior is a prior, not a validation — steering toward measured recruitment patterns is not the same as demonstrating that the resulting activations match what a human does, which would need a study against instrumented subjects.

What is concretely claimed and concretely checkable is the performance: 194 muscles, full body, 18 ms, one RTX 4090, with code and data you can fetch and a licence you will need to ask about.

Sources