Kimodo Export FBX (Mixamo)
The node that puts Kimodo motion on an actual Mixamo character
- motion
- file_path
A raw BVH of a skeleton is fine if you live in Blender, but most people want their generated motion on a character they can actually use. Kimodo Export FBX (Mixamo) is where Kimodo motion stops being abstract joint data and becomes an animated FBX of a real character: it retargets the generated motion onto a Mixamo-rigged FBX character of your choosing and writes an animated FBX out.
The inputs that matter
motion- from Kimodo Sampler.custom_fbx_path- the one you have to get right. Point it at a Mixamo-rigged FBX character (download one from Mixamo - "Without Skin" or T-Pose rigs work best). It acceptsinput/3d/char.fbx, an absolute path, or a path relative to ComfyUI'sinput/folder. No character, no output; this is the single biggest user error with the node.filename_prefixandsample_index- output name and which batch sample to export.yaw_offset(optional) - rotate the character around the Y axis, -180 to 180 degrees, to face the motion the right way.scale(optional) - force a scale multiplier; 0 means auto height-based scaling, which is the sane default that matches the character to the motion's meters.
Output: one file_path string pointing at the exported .fbx in ComfyUI's output folder.
The mechanism - and its one real dependency
Retargeting works by mapping Kimodo's SOMA skeleton onto the Mixamo rig's bone names, so the character's mesh and weights stay intact while the bone animation gets the generated motion. Two things have to exist first:
- The Autodesk FBX SDK Python bindings. This is the fiddly install, because it doesn't live on PyPI:
pip install fbxsdkpy --extra-index-url https://gitlab.inria.fr/api/v4/projects/18692/packages/pypi/simple
The pack's tested setup is Linux with Python 3.12. If the node complains "FBX SDK not installed," this step is why - the pack loads fine without it; the export just refuses to run.
- A Mixamo-rigged FBX character file (see above). The pack deliberately doesn't ship one, because third-party character FBXs are licensed - you bring your own from Mixamo.
Install and usage
Whole pack, one install: ComfyUI Manager → search Kimodo Motion Bridge, or clone + pip install -r requirements.txt + python install.py, restart. Node under Kimodo.
Best loop: generate, chain Kimodo Post Process so feet don't slide, feed motion here, and confirm the pose with Kimodo Preview 3D before burning an export on a motion you hate.
Where people get burned
- "No valid FBX path" - the character file isn't where the path says, or you left it blank. Watch the console: the node logs every location it tries.
- Import errors on load - missing
fbxsdkpyor a Windows/Python combo the prebuilt bindings don't cover. The README is explicit that Linux + Python 3.12 is the tested path; expect friction elsewhere. - Character faces the wrong way or wrong size - that's what
yaw_offsetandscaleexist for. Tryyaw_offsetfirst; only touch scale if the character's proportions don't match the motion's.
The payoff is a file you can drag into Blender, Unity, or Unreal with the character already moving - which is exactly what most people actually wanted when they typed "a person walks forward."
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| motion | KIMODO_MOTION | — | |
| custom_fbx_path | STRING | Path to Mixamo-rigged FBX character. Supports: 'input/3d/char.fbx', absolute path, or relative to ComfyUI input/ folder. | |
| filename_prefix | STRING | kimodo_fbx | — |
| sample_index | INT | 00–15 | Which sample to export (0-indexed) |
| yaw_offsetopt | FLOAT | 0-180–180 | Rotate character around Y-axis (degrees). |
| scaleopt | FLOAT | 0.000–10 | Force scale multiplier (0 = auto height-based scaling). |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| file_path | STRING | — |