Mesh Polybuild Delete At Cursor
Blender's Poly Build tool, minus the cursor
- BPY_OBJ
- BPY_OBJ
If you Googled this exact node name, you're probably staring at it in a ComfyUI graph wondering what it's supposed to do without a viewport to click in - and that confusion is fair. Poly Build is an interactive Edit Mode tool in Blender: you point your mouse at geometry and click, drag, or ctrl-click to build, move, or delete mesh elements live. This node wraps the "delete" action from that tool, but a ComfyUI graph has no mouse cursor to read.
What it is and why you'd reach for it
Honest framing first: this is not part of Avatar Graph's documented avatar-rigging pipeline (Create Mesh Layer → Modify Shape Key → Create Shape Flow → Avatar Main Output). It's one of the long tail of nodes this pack auto-generates by wrapping essentially every operator under Blender's bpy.ops.mesh namespace - the README's own generate_blender_types.py script exists specifically to keep that mapping current. In Blender's UI, Poly Build's delete action removes whatever vertex or edge is nearest your mouse cursor in the viewport. Here, there's no cursor/location input exposed in this node's schema, so headless it's going to act on whatever the operator's internal default position resolves to - not something you're aiming at. Treat it as advanced, experimental plumbing rather than a tool you're expected to reach for in a normal avatar-rigging graph.
How it works
When it does run, it deletes the mesh element nearest the target point and cleans up the surrounding geometry so the mesh stays valid rather than leaving a hole with dangling edges - the same cleanup Blender's regular Delete does with the right context.
The inputs and outputs that matter
The node exposes the same proportional-editing options as several other Polybuild variants in this pack:
mirror(boolean) - mirrors the operation across the mesh's symmetry setting, if one is configured.use_proportional_edit(boolean) plusproportional_edit_falloff(an 8-choice enum:SMOOTH,SPHERE,ROOT,INVERSE_SQUARE,SHARP,LINEAR,CONSTANT,RANDOM) andproportional_size- Blender's classic proportional-editing controls, letting a change taper off smoothly into surrounding geometry rather than stopping abruptly.use_proportional_connected/use_proportional_projected- restrict that falloff to topologically connected geometry, or project it through 3D space instead.release_confirm/use_accurate- interaction-timing and precision flags carried over from the interactive tool; largely inert without a live viewport driving them.
Output is the pack's standard single BPY_OBJ.
How to install it
ComfyUI Manager: search Avatar Graph, install, restart. Manual install:
cd ComfyUI/custom_nodes
git clone https://github.com/avatechai/avatar-graph-comfyui
cd avatar-graph-comfyui
python -m pip install -r requirements.txt
Python must be 3.10.x - the pack depends on bpy, which only has wheels for specific Python minor versions, and the README says so directly. Windows users get a bundled embedded-Python-3.10 zip to avoid the mismatch entirely; macOS/Linux users should use a pinned conda create --name comfyui python=3.10 environment. Add --enable-cors-header (--force-fp16 too, on Mac) if you want the live avatar preview panel working.
Common issues
If this node seems to do nothing predictable, that matches expectations - without a cursor position to target, its behavior isn't something you can reliably steer. For deleting specific geometry in a scripted pipeline, you're better served combining a selection step with a plain delete/dissolve operation than reaching for the Polybuild family at all. As always, a failed bpy install traces back to the Python version far more often than a broken dependency.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| BPY_OBJopt | BPY_OBJ | — | |
| mirroropt | BOOLEAN | false | — |
| use_proportional_editopt | BOOLEAN | false | — |
| proportional_edit_falloffopt | COMBO | 8 options: SMOOTH, SPHERE, ROOT, INVERSE_SQUARE, SHARP, LINEAR, +2 | |
| proportional_sizeopt | FLOAT | 1.009.999999974752427e-7–999999995904 | — |
| use_proportional_connectedopt | BOOLEAN | false | — |
| use_proportional_projectedopt | BOOLEAN | false | — |
| release_confirmopt | BOOLEAN | false | — |
| use_accurateopt | BOOLEAN | false | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| BPY_OBJ | BPY_OBJ | — |