Nodes/Avatar Graph/Object Vertex Group Move
ComfyUI Node

Object Vertex Group Move

Vertex Groups Out of Order? This Node Shuffles the Stack

By avatechai·Created 3 years ago·Updated 2 years ago· 264
Object Vertex Group Move
  • BPY_OBJ
  • BPY_OBJ
direction

Reordering vertex groups feels like busywork until it isn't. Group order determines which group ends up "active" relative to the others, some importers and weight-transfer tools assume a specific order, and honestly a tidy list is easier to debug. Object Vertex Group Move is the node for that chore: it nudges the active vertex group up or down the stack.

It's the most boring node in the Avatar Graph pack, and that's fine. Sometimes you just need boring.

How it works

This one wraps Blender's bpy.ops.object.vertex_group_move, another auto-generated passthrough: BPY_OBJ in, the operator runs in edit mode, the same object comes back out. The single meaningful input is direction - UP or DOWN. That's it.

The catch, and it's a real one: the operator moves the active group. So before you can move anything, the right group has to be active. In Blender you'd click it; in this graph you make it active with Object Vertex Group Set Active (or your last assign operation). Graph-wise, that means this node usually appears right after a Set Active node, not floating on its own.

Output is the unchanged BPY_OBJ, so it slots into the middle of a chain without fuss.

Installing it

It comes with the Avatar Graph pack:

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. Two install notes apply to every node in this pack: bpy==3.6.0 demands Python 3.10 (use a dedicated conda env per the README), and bpy is a several-hundred-MB headless Blender, so the install is chunky.

Common issues

The usual complaint is "I clicked Move and nothing happened." Ninety percent of the time it's because no group is active - the op has nothing to reorder. Wire in a Set Active node first and confirm you're targeting the mesh you think you are.

The other classic: this acts on the BPY_OBJ you feed it, and if that object isn't actually the one holding your groups, you're rearranging the wrong list. Check the wire.

Categoryblender

Inputs (2)

NameTypeDefaultDescription
BPY_OBJoptBPY_OBJ
directionoptCOMBO2 options: UP, DOWN

Outputs (1)

NameTypeDescription
BPY_OBJBPY_OBJ