explaingit

h6kplus/phymotion

Analysis updated 2026-05-18

16PythonAudience · researcherComplexity · 5/5Setup · hard

TLDR

PhyMotion is a physics-grounded reward signal that scores AI-generated human motion videos for realism and is used to reinforcement-learning fine-tune video generation models.

Mindmap

mindmap
  root((PhyMotion))
    What it does
      Scores motion realism
      Physics-grounded reward
      RL post-training
    Tech stack
      Python
      PyTorch
      MuJoCo
      SMPL-X
    Use cases
      Video reward scoring
      RL fine-tuning
      Paper reproduction
    Audience
      ML researchers
      Video generation labs

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Score AI-generated human motion videos for physical realism instead of relying on 2D perceptual metrics.

USE CASE 2

Fine-tune a video generation model with reinforcement learning using a physics-grounded reward.

USE CASE 3

Reproduce the paper's results using the released LoRA checkpoint and MotionX prompt dataset.

What is it built with?

PythonPyTorchMuJoCoSMPL-XCUDA

How does it compare?

h6kplus/phymotionadya84/ha-world-cup-2026afk-surf/safeclipper
Stars161616
LanguagePythonPythonPython
Setup difficultyhardeasymoderate
Complexity5/52/53/5
Audienceresearchergeneraldeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1day+

Requires CUDA GPU, MuJoCo, SMPL-X body models with registration, and tens of gigabytes of pretrained checkpoints.

License terms are not stated in the README, check the repository before commercial use.

In plain English

PhyMotion is a research project that tackles a specific problem in AI video generation: when AI systems generate videos of people moving, the results often show physically impossible motion, such as bodies that float, limbs that overlap each other, or movements no real person could perform. The scoring signals normally used to judge video quality rely on 2D visual impressions and often rate these unrealistic videos highly anyway. PhyMotion introduces a structured reward signal that judges human motion along three axes: kinematic plausibility, meaning how joints move and accelerate, contact and balance consistency, meaning whether feet correctly touch the ground, avoid sliding, and keep balance, and dynamic feasibility, meaning whether the forces and torques involved are physically possible. To compute this reward, the system recovers three-dimensional body shape estimates, called SMPL meshes, from generated video frames, retargets that motion onto a humanoid character inside the MuJoCo physics simulator, and scores the result across all three axes. This reward is used during reinforcement learning post-training, a process where a video generation model that has already been trained gets further refined by rewarding the outputs that score well on this physical realism check. Compared with existing reward methods, training with PhyMotion produced more consistent improvements in motion realism, including a gain of 68 Elo points as judged by blind human evaluators. The project is written in Python and is meant to plug into existing video generation training pipelines built on models like Wan2.1. Setting it up involves installing PyTorch with CUDA support, MuJoCo, and SMPL-X body models, plus downloading multi-gigabyte pretrained checkpoints from Hugging Face for the base video model and the reward's pose recovery component. Pretrained LoRA weights and a dataset of motion prompts built from MotionX are provided for people who want to reproduce or build on the results without training from scratch. The full README is longer than what was shown.

Copy-paste prompts

Prompt 1
Explain how PhyMotion's three feasibility axes (kinematic, contact, dynamic) are computed from a generated video.
Prompt 2
Walk me through setting up the PhyMotion environment including MuJoCo and SMPL-X body models.
Prompt 3
How would I combine the phymotion_score reward with a perceptual reward like HPSv3 during RL post-training?
Prompt 4
Summarize what SMPL mesh recovery via GVHMR does inside the PhyMotion reward pipeline.

Frequently asked questions

What is phymotion?

PhyMotion is a physics-grounded reward signal that scores AI-generated human motion videos for realism and is used to reinforcement-learning fine-tune video generation models.

What language is phymotion written in?

Mainly Python. The stack also includes Python, PyTorch, MuJoCo.

What license does phymotion use?

License terms are not stated in the README, check the repository before commercial use.

How hard is phymotion to set up?

Setup difficulty is rated hard, with roughly 1day+ to a first successful run.

Who is phymotion for?

Mainly researcher.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.