Nodes/Avatar Graph/Object Vertex Group Smooth
ComfyUI Node

Object Vertex Group Smooth

Smooth Out Janky Weight Falloff Before It Hits the Avatar

By avatechai·Created 3 years ago·Updated 2 years ago· 264
Object Vertex Group Smooth
  • BPY_OBJ
  • group_select_mode
  • BPY_OBJ
factor0.50
repeat1
expand0.00

Weight falloff is where avatars get wonky. A cheek group that grabs the nose, a jaw that tugs the eye corner - that's all jagged, abrupt weight transitions doing their worst. Object Vertex Group Smooth is the node that evens that out, blending weights across neighboring vertices so the transition is gradual instead of a cliff.

It's one of the most-used weight tools in Blender for exactly this reason, and here it's a node you can slot into the middle of a graph and tune.

How it works

An auto-generated wrapper around Blender's bpy.ops.object.vertex_group_smooth. BPY_OBJ in, edit mode, operator runs, same object out. The useful inputs:

  • factor - how strongly to smooth, 0 to 1 (default 0.5). Low values are a gentle pass; 1 is aggressive.
  • repeat - how many times to run the smoothing (default 1, up to 10,000). This is your "do it until it looks right" dial. For stubborn falloff, a few repeats beat one maxed-out factor.
  • expand - from -1 to 1 (default 0). Positive values spread the influence outward into neighboring unweighted vertices; negative pulls it in. Handy when a group's edge is too tight or too loose.
  • group_select_mode - text field feeding Blender's enum; type ALL or ACTIVE for which groups get smoothed.

Output is the same BPY_OBJ, so the classic chain is: assign weights → smooth (repeat 2–4) → Normalize All to re-balance the sums.

Installing it

It ships with Avatar Graph:

cd ComfyUI/custom_nodes
git clone https://github.com/avatechai/avatar-graph-comfyui
cd avatar-graph-comfyui
python -m pip install -r requirements.txt

Restart ComfyUI, or grab "Avatar Graph" from ComfyUI Manager. Standard pack notes: bpy==3.6.0 requires Python 3.10 (dedicated conda env per the README), and bpy is a heavy headless-Blender download.

Common issues

The most common mistake is cranking repeat way up and then wondering why the group turned into a mushy blob. Smoothing converges to everything-everywhere; a couple of repeats at a moderate factor is usually the sweet spot.

If nothing changes, check the same thing as the rest of this pack: an empty selection, an inactive wrong group, or no BPY_OBJ wired in at all. Smooth operates on the mesh you feed it, and it feeds on your current selection - no mesh, no smoothing.

Categoryblender

Inputs (5)

NameTypeDefaultDescription
BPY_OBJoptBPY_OBJ
group_select_modeoptB_ENUM
factoroptFLOAT0.500–1
repeatoptINT11–10000
expandoptFLOAT0.00-1–1

Outputs (1)

NameTypeDescription
BPY_OBJBPY_OBJ