Object Paths Calculate
Drawing an object's motion trail in the viewport
- BPY_OBJ
- BPY_OBJ
Object Paths Calculate wraps bpy.ops.object.paths_calculate, Blender's "Motion Paths" feature - the string of dots you see trailing behind an animated object in the viewport, showing where it's been (or going to be) frame by frame. It's worth being upfront about what this is for: it's a viewport visualization tool for reviewing animation timing, not something that affects a render, an export, or the avatar's actual behavior.
How it works
Point it at an object with animation on it and a frame range, and Blender computes the object's position at each frame in that range and draws it as a connected trail of dots in the 3D viewport - the standard way animators eyeball spacing and arcs without scrubbing the timeline frame by frame. Nothing about the object's geometry, transform, or exported data changes; this only creates viewport-display data.
The inputs and outputs that matter
display_type-CURRENT_FRAME(recompute relative to wherever the timeline currently sits) orRANGE(a fixed frame range regardless of playhead position).range- which frames to include:KEYS_ALL(every keyframe on the object),KEYS_SELECTED(just selected keyframes),SCENE(the scene's full frame range), orMANUAL(a range you'd set elsewhere).
Output is the same BPY_OBJ, now carrying motion-path display data for the viewport.
How to install it
Via ComfyUI Manager - search "Avatar Graph" and install - or manually: cd ComfyUI/custom_nodes && git clone https://github.com/avatechai/avatar-graph-comfyui, cd avatar-graph-comfyui && pip install -r requirements.txt, then restart. Same pin as every node in this pack: Python 3.10.x, because bpy doesn't ship wheels for anything newer - install on 3.11+ and either the install fails or the blender-category nodes never register. macOS/Linux: dedicated conda env at 3.10. Windows: Avatech's prebuilt Python-3.10 ComfyUI zip, pack installed via Manager afterward.
Common issues & troubleshooting
Ran it, exported the avatar, and nothing looks different. That's expected, not a bug - motion paths are purely a viewport aid for animators reviewing timing in Blender's own interface. They don't get baked into a .glb/.gltf export, and they have zero effect on the Shape Flow rig's actual runtime behavior. If you're trying to affect the animation itself, this is the wrong node entirely.
No visible trail at all. The object needs actual animation (keyframes) on it for a motion path to have anything to plot - running this on a static object with no animation data produces nothing to draw, correctly.
Not in the README's node table. Right - it's one of the lower-level blender-category operator wrappers, generated straight from Blender's own operator registry via generate_blender_types.py, rather than one of the roughly seven higher-level nodes the pack documents by hand. It's genuinely a niche include here - reviewing animation timing inside Avatar Graph's own web viewer is more likely to be how you'd normally check an avatar's motion, not this node.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| BPY_OBJopt | BPY_OBJ | — | |
| display_typeopt | COMBO | 2 options: CURRENT_FRAME, RANGE | |
| rangeopt | COMBO | 4 options: KEYS_ALL, KEYS_SELECTED, SCENE, MANUAL |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| BPY_OBJ | BPY_OBJ | — |