Nodes/Avatar Graph/Object Face Map Remove From
ComfyUI Node

Object Face Map Remove From

Dropping faces out of a face map without deleting them

By avatechai·Created 3 years ago·Updated 2 years ago· 264
Object Face Map Remove From
  • BPY_OBJ
  • BPY_OBJ

Not to be confused with Object_FaceMapRemove (which deletes the whole face map), Object Face Map Remove From is the more surgical tool: it takes the currently selected faces in Edit Mode and removes just them from the active face map's membership - the map itself, and every other face still in it, stays intact.

How it works

It wraps bpy.ops.object.face_map_remove_from(), and it's the exact inverse of Object_FaceMapAssign: where that node adds selected faces to the active map, this one takes them back out. The object needs to be in Edit Mode (Object_EditmodeToggle first, if needed) with the faces you want removed currently selected. Nothing about the mesh geometry changes - the faces stay exactly where they are, still shaped the same, they just stop counting as members of that particular grouping.

Where this comes up: you tagged a region into a face map earlier, then realized part of it doesn't actually belong - maybe your segmentation or selection was a little too generous - and you want to walk that back without deleting and rebuilding the whole map from scratch.

The inputs and outputs that matter

There's exactly one input:

  • BPY_OBJ - the object whose selected faces get removed from the active face map.

Output is a single BPY_OBJ, with the active face map's membership updated.

How to install it

ComfyUI Manager: search "Avatar Graph", install, restart - or manually:

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

bpy needs Python 3.10.x, exactly. Windows gets a prebuilt Python-3.10 ComfyUI zip from the README; macOS/Linux wants a dedicated conda create --name comfyui python=3.10 environment. Add --enable-cors-header on restart (--force-fp16 too on Mac) for the live avatar preview; without it you still get full functionality via .glb/.gltf export.

Common issues & troubleshooting

Node not loading traces to the Python-version pin - check the startup console for a bpy import error first.

Ran this and the map is unchanged - check that the object is actually in Edit Mode and that the faces you meant to remove were genuinely selected at the time this node ran; without both, there's nothing for the operator to act on.

Removed faces from the wrong map - since this targets the active face map, not one you name, make sure the map you actually mean to edit is the active one before this node runs, especially if the object has several.

Confused this with Object_FaceMapRemove - an easy mix-up given the names. Object_FaceMapRemove deletes the entire active face map, wiping out its whole membership list at once. This node only pulls the currently-selected faces out of it, leaving the map and every other member intact. Pick based on whether you want to edit a map or get rid of it entirely.

Standing caveat for this family: face maps are a deprecated Blender feature, replaced by the general attribute system in newer versions. An error about a missing face-map API is your bpy version, not your graph.

Categoryblender

Inputs (1)

NameTypeDefaultDescription
BPY_OBJoptBPY_OBJ

Outputs (1)

NameTypeDescription
BPY_OBJBPY_OBJ