Object Vertex Group Assign New
The one-step vertex group you'll actually reach for
- BPY_OBJ
- BPY_OBJ
If you're building vertex groups in a ComfyUI graph, this is the one you'll actually use. Object Vertex Group Assign New creates a fresh vertex group and assigns the selected vertices to it in a single step - the "create group and fill it now" operator, bpy.ops.object.vertex_group_assign_new(), wrapped as a node. Where the two-step version (Object Vertex Group Add then Object Vertex Group Assign) leaves you juggling two nodes and an intermediate state, this one collapses the whole thing into one.
It's the natural building block for the Avatar Graph pipeline's region labeling. The pack turns a segmented character image into a mesh, and then you want named groups - "face," "eyes," "mouth" - for the shape keys that drive blinks and lip-sync. Assign New is how each region becomes a group without ceremony.
Mechanically it's identical to the other auto-generated vertex-group nodes: the pack's EditOps base deselects everything, activates your BPY_OBJ, enters edit mode, and runs the operator. And it inherits the same selection caveat - on a freshly created mesh, entering edit mode selects every vertex, so this node assigns the whole mesh into the new group. If your graph has done selection work inside the Blender scene first, it assigns exactly that selection; there's no way to express a subset purely through ComfyUI wires. For whole-mesh grouping, which is most of what this pipeline does, that's exactly right.
One input (BPY_OBJ, the mesh), one output (same object, now carrying a filled group). No name parameter on this auto-generated version, so the group comes out with a default name - if your shape-key setup references groups by name, check what got created and rename via the pack's named group entry point if needed.
Install is pack-wide: ComfyUI Manager → "Avatar Graph", or git clone https://github.com/avatechai/avatar-graph-comfyui into ComfyUI/custom_nodes and pip install -r requirements.txt on Python 3.10 (bpy==3.6.0). First launch downloads the ~2.4 GB SAM model, so budget for a slow start.
Troubleshooting is minimal: if you expected a subset to be assigned and got everything, that's the default-selection behavior above, not a bug. And because the pack resets the Blender scene at the start of each run, groups rebuild every run - which is fine, since the whole graph rebuilds every run. When a workflow template shows this node in the middle of a chain, read it as "here a region of the character gets its name," and everything downstream that references the group will work from there.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| BPY_OBJopt | BPY_OBJ | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| BPY_OBJ | BPY_OBJ | — |