Object Explode Refresh
Recalculating a stale Explode modifier
- BPY_OBJ
- BPY_OBJ
This is a maintenance node for a modifier most Avatar Graph users will never add: Blender's Explode modifier, which shatters a mesh into pieces that fly apart along a particle system's paths. Object Explode Refresh doesn't create that effect - it fixes it when Blender's cached data about it goes stale.
How it works
It wraps bpy.ops.object.explode_refresh(). The Explode modifier internally caches which mesh faces belong to which particle, so it knows how to break the mesh apart consistently frame to frame. If you change the particle system or the underlying mesh after the modifier's already been added, that cached mapping can go out of sync - pieces flying apart incorrectly, or not matching the mesh anymore. This node forces Blender to recalculate that mapping from scratch.
It doesn't add an Explode modifier - it only refreshes one that's already on the object, targeted by name.
Like this pack's force-field and armature nodes, this one exists because the pack auto-generates a node for a large chunk of Blender's object.* operator surface, not because destruction effects are part of Avatar Graph's documented blink-and-lipsync pipeline. Reach for it only if you're deliberately layering your own particle-driven effects onto a rig.
The inputs and outputs that matter
BPY_OBJ- the object carrying the Explode modifier.modifier(string) - the exact name of the Explode modifier to refresh. It has to already exist on the object; this node doesn't create one for you.
Output: a single BPY_OBJ, passed through.
How to install it
ComfyUI Manager: search "Avatar Graph", install, restart - or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/avatechai/avatar-graph-comfyui
cd avatar-graph-comfyui && python -m pip install -r requirements.txt
bpy only ships for Python 3.10.x, and that pin is the actual blocker most people hit, not this operator. Windows gets a prebuilt Python-3.10 ComfyUI zip from the README; macOS/Linux should build a dedicated conda create --name comfyui python=3.10 environment. Add --enable-cors-header on restart (--force-fp16 too on Mac) for the live avatar preview; without it you still get full functionality via .glb/.gltf export.
Common issues & troubleshooting
Node not loading is the Python-version pin - check ComfyUI's startup console for a bpy import error before assuming anything else.
Nothing seems to happen when this node runs - check the modifier string first. It has to match the target Explode modifier's name exactly, case-sensitive, and if it doesn't match anything on the object, there's simply nothing to refresh - this isn't a node that loudly complains about a missing target.
Modifier still behaving oddly after a refresh - a refresh only fixes a stale particle-to-face mapping; it doesn't fix an underlying misconfiguration in the particle system or modifier settings themselves. If the explosion pattern looks wrong even after this node runs, check the modifier's own settings (and the particle system feeding it) rather than assuming another refresh will help.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| BPY_OBJopt | BPY_OBJ | — | |
| modifieropt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| BPY_OBJ | BPY_OBJ | — |