RepoByteDance (Doubao/Seed)ByteDance (Doubao/Seed)published Aug 28, 2025seen 5d

ByteDance-Seed/Puppeteer

Python

Open original ↗

Captured source

source ↗
published Aug 28, 2025seen 5dcaptured 10hhttp 200method plain

ByteDance-Seed/Puppeteer

Language: Python

License: Apache-2.0

Stars: 7

Forks: 1

Open issues: 0

Created: 2025-08-28T07:41:01Z

Pushed: 2025-09-09T14:30:57Z

Default branch: master

Fork: no

Archived: no

README:

Project | Paper | Video | Data: Articulation-XL2.0

Puppeteer is proposed for automatic rigging and animation of 3D objects. Given a 3D object, Puppeteer first automatically generates skeletal structures and skinning weights, then animates the rigged model with video guidance through a differentiable optimization pipeline. This comprehensive approach aims to enable fully automated transformation of static 3D models into dynamically animated assets, eliminating the need for manual rigging expertise and significantly streamlining 3D content creation workflows.

🔥 News

  • Sep 09, 2025: We uploaded the video for Puppeteer.
  • Sep 04, 2025: Release the inference codes and model checkpoints.
  • Aug 15, 2025: Release paper of Puppeteer!

🔧 Installtation

We use Python 3.10 with PyTorch 2.1.1 and CUDA 11.8. The environment and required packages can be installed as follows:

git clone https://github.com/ByteDance-Seed/Puppeteer.git --recursive && cd Puppeteer
conda create -n puppeteer python==3.10.13 -y
conda activate puppeteer
pip install torch==2.1.1 torchvision==0.16.1 torchaudio==2.1.1 --index-url https://download.pytorch.org/whl/cu118
pip install -r requirements.txt
pip install flash-attn==2.6.3 --no-build-isolation
pip install torch-scatter -f https://data.pyg.org/whl/torch-2.1.1+cu118.html
pip install --no-index --no-cache-dir pytorch3d -f https://dl.fbaipublicfiles.com/pytorch3d/packaging/wheels/py310_cu118_pyt211/download.html

🚀 Demo

We provide a complete pipeline for rigging and animating 3D models. Before running the pipeline, visit each folder (skeleton, skinning, animation) to download the necessary model checkpoints. Example data is available in the examples folder.

Rigging

Given 3D meshes, we first predict the skeleton and skinning weights:

bash demo_rigging.sh

The final rig files will be saved in results/final_rigging. To evaluate the skeleton and skinning components separately, refer to their respective folders.

Video-guided 3D animation

To animate the rigged model using video guidance, run:

bash demo_animation.sh

The rendered 3D animation sequence from different views will be saved in results/animation. Refer to the animation folder for comprehensive details on data processing and structure.

😊 Acknowledgment

The code builds upon MagicArticulate, MeshAnything, Functional Diffusion, RigNet, Michelangelo, PartField, AnyMole and Lab4D. We gratefully acknowledge the authors for making their work publicly available.

📚 Citation

@article{song2025puppeteer,
title={Puppeteer: Rig and Animate Your 3D Models},
author={Chaoyue Song and Xiu Li and Fan Yang and Zhongcong Xu and Jiacheng Wei and Fayao Liu and Jiashi Feng and Guosheng Lin and Jianfeng Zhang},
journal={arXiv preprint arXiv:2508.10898},
year={2025}
}

Notability

notability 2.0/10

Low stars, new repo, little traction