AIGAnimation/CAMDM

(SIGGRAPH 2024) Official repository for "Taming Diffusion Probabilistic Models for Character Control"

What it solves

CAMDM provides a way to generate high-quality, diverse character animations in real-time that respond to user-supplied control signals. It allows users to control a character's movement and style (e.g., using the 100STYLE dataset) through a single unified model, avoiding the need for separate animation systems for every style.

How it works

The project uses a diffusion probabilistic model to generate motion. The system is split into two main parts: a PyTorch-based training pipeline where the model is trained on motion data (like the 100STYLE dataset) and then converted to ONNX format. A Unity-based inference engine then runs this model in real-time, allowing the user to interactively control the character via keyboard inputs (WASD for movement, J/L for style switching).

Who it’s for

Developers and researchers in computer graphics, game development, and robotics who need real-time, style-aware character animation control.

Highlights

  • Real-time Performance: Achieves over 60 FPS on a consumer-level GPU (RTX 3060).
  • Unified Model: A single model can handle multiple animation styles.
  • Cross-Platform Inference: Supports consumer GPUs and Apple Silicon MacBooks via Unity.
  • Open Source: Includes both the PyTorch training code and the Unity inference implementation.

Related

  • Project
  • Project
  • Project
  • Project