Nodes/Avatar Graph/UV Select Edge Ring
ComfyUI Node

UV Select Edge Ring

Pick the whole loop in one go

By avatechai·Created 3 years ago·Updated 2 years ago· 264
UV Select Edge Ring
  • BPY_OBJ
  • location
  • BPY_OBJ
extendfalse

UV Select Edge Ring is how you grab an entire loop of edges at once instead of picking them one by one. It selects the ring of UV edges running through a point you specify - the UV-space version of Blender's edge-loop selection, which is the single most useful selection gesture in all of UV editing. It's also the node you'll reach for right before UV Mark Seam, because a seam is nothing more than a loop of edges you've decided should be a cut.

How it works

It wraps bpy.ops.uv.select_edge_ring on your BPY_OBJ, the usual auto-generated pattern: edit mode, operator call, object returned. Two inputs beyond the mesh:

  • location - a B_VECTOR2 with the UV coordinates where the ring selection starts. You're saying "the loop that passes through this point."
  • extend - when on, add the ring to the existing selection instead of replacing it. Handy for picking multiple loops.

Output is the same BPY_OBJ with the ring selected.

The mental model: a ring is the sequence of edges that runs across a strip of quads, one after another. In a UV map, the edges of an island's boundary often form a ring - which is exactly why selecting one is the standard first move for marking a seam. Point at the boundary, get the whole loop, mark it, done.

Where it fits

In Avatar Graph the canonical chain is: UV Select Edge Ring at a boundary → UV Mark Seam → unwrap. It's the fast path to the clean cut layout every character mesh needs - a seam along the ring behind the jaw, one around the mouth, and the unwrap suddenly behaves. If you've been trying to mark seams with UV Select All (which marks everything, including interior edges you don't want), this is the node that fixes it: ring-select only, then mark, and your seams land exactly on the loops you picked.

One note: it needs UV edge selection context to find the ring, and it starts from a location you supply. If the result selects the wrong loop, adjust the location - the operator follows whichever ring passes nearest that point.

Installing Avatar Graph

This node ships in the Avatar Graph pack from Avatech. From 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 ComfyUI with --enable-cors-header. Or ComfyUI Manager → search Avatar Graph → Install.

Pack-wide gotchas: it pins bpy==3.6.0, which only builds on Python 3.10.x - newer Pythons fail the install. First launch pulls the ~2.5 GB SAM model. And the README warns the pack is still changing; pin the version once your workflow works.

Categoryblender

Inputs (3)

NameTypeDefaultDescription
BPY_OBJoptBPY_OBJ
extendoptBOOLEANfalse
locationoptB_VECTOR2

Outputs (1)

NameTypeDescription
BPY_OBJBPY_OBJ