Browser-based previs studio for blocking scenes, posing characters, and cutting camera moves, then sending the shots to AI video models.
Friedrich-M/UniMate
A unified text-to-motion model that generates animations for arbitrary rigged skeletons, from humanoids to quadrupeds, birds, fish and insect-like rigs.
- Stars
- 2,006
- Forks
- 217
- Open issues
- 6
- Last commit
- 13 days ago
What is it?
UniMate generates articulated 3D motion from a text prompt and a rigged asset, and it works across skeletons with different topologies without per-skeleton retraining or test-time optimization. It is built on flow matching and is trained on UniML3D, a dataset of 13,769 text-paired motion clips across 7,430 skeletons spanning bipedal, quadrupedal, avian, marine, insectoid, serpentine and rigid-object rigs.
The repository includes the dataset data-processing pipeline, training code driven by JSON configs and Accelerate, and inference scripts that animate dataset skeletons or your own rigged GLB, glTF or FBX assets. A rig_preprocess tool labels joints with an LLM and lets you review them before building an asset. Released checkpoints are available on Hugging Face.
The same model also supports motion in-betweening between keyframes, text-guided editing that keeps selected joints and regenerates the rest, and motion expansion that chains several prompts into one longer clip.
Key features
- 01Generates motion for arbitrary skeletons from a text prompt without per-skeleton retraining
- 02Supports humanoid, quadruped, avian, marine, insectoid and rigid-object rigs
- 03Provides training and inference code with released checkpoints and the UniML3D dataset
- 04Imports your own rigged GLB, glTF or FBX assets via a joint-labeling preprocessing tool
- 05Supports keyframe in-betweening, motion editing and motion expansion without extra training
Use cases
- Animating custom 3D characters or creatures from text prompts in games or film previsualization
- Generating motion for non-humanoid assets such as quadrupeds, birds or fish
- Research on text-conditioned motion generation across diverse skeleton topologies
- Filling in motion between keyframes or editing parts of an existing animation
Quick start
- 1
Create the conda environment with Python 3.10
conda create -n unimate python=3.10 -y - 2
Activate the environment
conda activate unimate - 3
Pin setuptools below version 81
pip install "setuptools<81" - 4
Install the project requirements
pip install -r requirements.txt --no-build-isolation
Things to know
- Full reproduction needs the Truebones ZOO motion pack, a commercial asset that must be purchased and cannot be redistributed.
- Training is set up for GPU use with Accelerate, including multi-GPU runs, so it is not a CPU-friendly workflow.
- Preview checkpoints are released and new checkpoints will replace them, so results may change.
Topics
FAQ
- What is UniMate?
- A unified text-to-motion model that generates animations for arbitrary rigged skeletons, from humanoids to quadrupeds, birds, fish and insect-like rigs. UniMate generates articulated 3D motion from a text prompt and a rigged asset, and it works across skeletons with different topologies without per-skeleton retraining or test-time optimization. It is built on flow matching and is trained on UniML3D, a dataset of 13,769 text-paired motion clips across 7,430 skeletons spanning bipedal, quadrupedal, avian, marine, insectoid, serpentine and rigid-object rigs.
- Is UniMate free to use? What license does it have?
- UniMate is open source under the MIT license. Check the license terms before using it in commercial products.
- Is UniMate still maintained?
- Actively maintained. The last commit to UniMate was on Oct 8, 2026.
- What can I use UniMate for?
- Animating custom 3D characters or creatures from text prompts in games or film previsualization Generating motion for non-humanoid assets such as quadrupeds, birds or fish Research on text-conditioned motion generation across diverse skeleton topologies Filling in motion between keyframes or editing parts of an existing animation
- How do I install UniMate?
- Create the conda environment with Python 3.10: conda create -n unimate python=3.10 -y Activate the environment: conda activate unimate Pin setuptools below version 81: pip install "setuptools<81" Install the project requirements: pip install -r requirements.txt --no-build-isolation
- Where can I get UniMate?
- The source code and installation instructions are on GitHub: https://github.com/Friedrich-M/UniMate
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Open-source text-to-speech system using flow matching with a Diffusion Transformer, supporting zero-shot voice cloning from a short reference audio.
A set of installable skills that give AI coding agents guidance on motion design, After Effects, Remotion video, logo animation, and motion backgrounds.
Type a text prompt and get a rigged 3D character performing that motion, using fal video models, GVHMR pose recovery and Mixamo retargeting.
An HTML-native design skill for AI coding agents that turns a text prompt into prototypes, slide decks, animations and infographics.
Open 3D Engine (O3DE), a multi-platform, real-time 3D engine for building games, cinematic 3D worlds and simulations.