SimDiff: Simulator-constrained Diffusion Model for Physically Plausible Motion Generation

Akihisa Watanabe1, Jiawei Ren2, Li Siyao2, Yichen Peng3, Erwin Wu3, Edgar Simo‑Serra1
1Waseda University  ·   2Nanyang Technological University  ·   3Institute of Science Tokyo

Abstract

Generating physically plausible human motion is crucial for applications such as character animation and virtual reality. Existing approaches often incorporate a simulator‑based motion projection layer into the diffusion process to enforce physical plausibility. However, such methods are computationally expensive due to the sequential nature of the simulator, which prevents parallelization. We show that simulator‑based motion projection can be interpreted as a form of guidance—either classifier‑based or classifier‑free—within the diffusion process. Building on this insight, we propose SimDiff, a Simulator‑constrained Diffusion Model that integrates environment parameters (e.g., gravity, wind) directly into the denoising process. By conditioning on these parameters, SimDiff generates physically plausible motions efficiently, without repeated simulator calls at inference, and also provides fine‑grained control over different physical coefficients. Moreover, SimDiff successfully generalizes to unseen combinations of environmental parameters, demonstrating compositional generalization.

Prompt ① — "Person is adjusting their sitting position."

MDM (Original)

MDM + PhysDiff

MDM + SimDiff

Prompt ② — "A person does a backflip."

MDM (Original)

MDM + PhysDiff

MDM + SimDiff

Prompt ③ — "A person gets down on the floor and crawls forward."

MDM (Original)

MDM + PhysDiff

MDM + SimDiff

✦ Gravity Variation (wind = 0)

Prompt: "A person runs forward steadily."

Gravity
1.23
Wind X
0
Wind Y
0

Low Gravity (Moon-like)

Gravity
9.81
Wind X
0
Wind Y
0

Earth Gravity

Gravity
24.8
Wind X
0
Wind Y
0

High Gravity

✦ Planar Wind Variation (g = −9.81)

Prompt: "A person steps forwards carefully."

Gravity
9.81
Wind X
0
Wind Y
0

No Wind

Gravity
9.81
Wind X
-1.0
Wind Y
0

Wind Left

Gravity
9.81
Wind X
0
Wind Y
-1.0

Wind Forward

✦ Compositional Generalisation to Unseen Environment

Prompt: "A person jumps high from a standing position."

Gravity
9.81
Wind X
0
Wind Y
0

Earth + No Wind

Gravity
1.62
Wind X
0
Wind Y
0

Moon + No Wind

Gravity
1.62
Wind X
2.0
Wind Y
0

Moon + Wind Right

Gravity
1.62
Wind X
0
Wind Y
2.0

Moon + Wind Backward

Gravity
1.62
Wind X
2.0
Wind Y
2.0

Moon + Wind Diagonal