Nodes/Avatar Graph/Mesh Dissolve Verts
ComfyUI Node

Mesh Dissolve Verts

Removes vertices, keeps the surface sealed

By avatechai·Created 3 years ago·Updated 2 years ago· 264
Mesh Dissolve Verts
  • BPY_OBJ
  • BPY_OBJ
use_face_splitfalse
use_boundary_tearfalse

The vertex-mode sibling to Mesh_DissolveEdges, and the same story: this exists so you don't have to reach for Mesh_Delete and end up with a hole. Mesh_DissolveVerts wraps bpy.ops.mesh.dissolve_verts - it removes selected vertices and merges the surrounding edges and faces to close the gap, rather than leaving an opening the way a plain vertex delete would.

How it works

Select the vertices you want gone and run this instead of Mesh_Delete with type=VERT. Deleting a vertex outright takes every connected edge and face with it, tearing a hole. Dissolving removes the vertex specifically, letting the geometry around it merge back into fewer, larger faces so the surface stays intact. It's a reduction move, not a subtraction - useful for thinning out an area with more vertex density than the shape actually needs, without opening the mesh up.

The inputs and outputs that matter

  • BPY_OBJ (optional) - the mesh with vertices already selected.
  • use_face_split (default false) - split resulting merged faces where needed for cleaner topology, rather than always collapsing into the largest possible face.
  • use_boundary_tear (default false) - allow the dissolve to tear the mesh's outer boundary open instead of keeping it sealed. Left off unless you specifically want that.

Output is a single BPY_OBJ, with the selected vertices gone and surrounding geometry merged to fill the gap.

How to install it

Search Avatar Graph in ComfyUI Manager, or clone 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

then restart. bpy==3.6.0 needs Python 3.10.x - README's prebuilt Python-3.10 zip on Windows, conda environment (conda create --name comfyui python=3.10) on Mac/Linux. opencv-python, mediapipe, and segment-anything also install.

Common issues & troubleshooting

Nothing happens. As with the pack's other selection-driven dissolve nodes, this only acts on selected vertices - check that a real selection step actually ran upstream before assuming the node itself is at fault.

A large, odd-shaped face appeared where several vertices used to be. That's expected on flat or near-flat regions - dissolving a cluster of vertices merges everything around them into one bigger face. On curved geometry, that merged face can end up non-planar and look worse than the smaller vertex-dense version it replaced; this operator works best on genuinely flat or gently-curved regions, not aggressive curvature.

Wanted an actual hole instead. That's Mesh_Delete with type=VERT, not this node - dissolve is specifically for reducing vertex density while keeping the surface sealed.

Categoryblender

Inputs (3)

NameTypeDefaultDescription
BPY_OBJoptBPY_OBJ
use_face_splitoptBOOLEANfalse
use_boundary_tearoptBOOLEANfalse

Outputs (1)

NameTypeDescription
BPY_OBJBPY_OBJ