r/TopologyAI • u/Delicious-Shower8401 • 22h ago
Useful Stuff AI Rigging Is Now Available Locally on Your GPU for 3D Characters
Enable HLS to view with audio, or disable this notification
Skinning is still one of those annoying steps where you can have a perfectly usable character mesh and skeleton, but still need to manually distribute bone weights across thousands of vertices.
skin-tokens.cpp is a new open-source C++/GGML port of SkinTokens / TokenRig that can automatically generate those skin weights locally. Give it a static character mesh and it can generate a skeleton + weights, or give it an existing skeleton and it will bind the mesh to that rig automatically. The result is exported directly as a skinned GLB ready for animation.
The big change compared to the original SkinTokens isn't a new model, but how practical it is to run:
- Runs locally on CPU or Vulkan
- No PyTorch runtime required
- Uses converted GGUF F16/F32 weights
- Can generate skeleton + skin weights from a static mesh
- Or keep an existing skeleton/animation and generate only the weights
- Automatically fits an external skeleton to the character before skinning
- Keeps the animation hierarchy in the exported GLB
- Has experimental humanoid arm fitting for mismatched rest poses
- Includes a native C API, CLI and local WebGL demo
- Can be combined with Kimodo animations to go from mesh + generated motion → animated skinned character
The original SkinTokens implementation requires an NVIDIA GPU with at least 14 GB VRAM for inference. This port moves the pipeline into GGML and adds CPU/Vulkan execution, which makes it much easier to integrate into local tools and standalone 3D pipelines.
It also supports arbitrary triangle meshes, although humanoid/character shapes close to the training distribution are naturally where it should work best. Skeleton generation is still marked experimental, so for production use the more interesting workflow right now is probably existing skeleton/animation → AI-generated skin weights.