Object Vertex Group Deselect
The selection-mirror node with a limited stage to play on
- BPY_OBJ
- BPY_OBJ
Blender's vertex-group selection tools have a satisfying symmetry: vertex_group_select selects all the vertices that are in the active group, and vertex_group_deselect does the opposite - it deselects the vertices in the active group. Object Vertex Group Deselect is the auto-generated wrapper for the second one (bpy.ops.object.vertex_group_deselect()), and its purpose in a real Blender session is editing: you deselect a region so your next operation (an extrude, an assign, a weight brush) applies to everything except that group.
The uncomfortable truth is that its power mostly evaporates in a ComfyUI graph. This node's entire effect is on vertex selection state inside the Blender scene - and selection state isn't threaded through ComfyUI wires. The pack's EditOps base enters edit mode, runs the op, and leaves selection wherever it lands, but there's no clean way to feed that selection into the next node as data. It can matter if you're chaining several selection-manipulating operators inside one scene so that a later assign hits the right subset - that's a legitimate, if advanced, pattern - but for the majority of avatar workflows it's a step that runs and then gets forgotten.
Input: BPY_OBJ (the mesh in edit mode whose selection gets pruned). Output: the same object. No parameters to tune.
This is one of those nodes I'd describe as "registry coverage rather than a daily driver" - the pack generates nodes from Blender's entire operator registry, and selection-state tools are part of that inventory whether or not a graph has much use for them. If your goal is "everything except this region," the more expressive route in this pack is Object Vertex Group Invert, which flips the weights of a group and gives you a concrete artifact (the inverted group) you can actually pass downstream. Deselect leaves you with an ephemeral selection and nothing to show for it.
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.
Troubleshooting: if you chain this before an assign and the assign still fills the whole mesh, remember the scene resets each run and selection starts over from the default (all-vertices-selected on a fresh mesh). Verify the group actually contains the vertices you think it does - a Vertex Group Clean earlier may have emptied it. For most people, though, the right move is to skip this node and reach for Invert instead.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| BPY_OBJopt | BPY_OBJ | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| BPY_OBJ | BPY_OBJ | — |