Mesh Customdata Crease Edge Add
Flips on subdivision-surface creasing, nothing else
- BPY_OBJ
- BPY_OBJ
One BPY_OBJ in, one BPY_OBJ out, no other fields - this node wraps Blender's bpy.ops.mesh.customdata_crease_edge_add operator as-is, part of Avatar Graph's larger habit of auto-generating a ComfyUI node for a big swath of Blender's mesh operators rather than hand-picking the useful ones.
What it actually does
If you've ever used a Subdivision Surface modifier and wanted one edge to stay sharper than its neighbors without marking it fully sharp, that's edge crease - a per-edge float from 0 to 1 that tells the subdivision algorithm how much to resist smoothing across that edge. But Blender doesn't store a crease value on every edge by default; it's optional custom data. This operator allocates that layer, initialized to zero on every edge in the mesh. Running it changes nothing about the mesh's shape - you won't see any visual difference at all. What changes is that the storage now exists, so a subdivision workflow (or a node further down your graph that sets actual crease values) has somewhere to write them.
The input and output that matter
BPY_OBJ(optional) - the mesh to add the edge-crease layer to.
Output is the same BPY_OBJ, unchanged in geometry, ready for whatever sets or subdivides based on crease values next.
How to install it
Via ComfyUI Manager: search "Avatar Graph" and install. 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
Then restart ComfyUI. The pack pins bpy==3.6.0, which is only buildable under Python 3.10.x - a dedicated conda env (conda create --name comfyui python=3.10) on Mac/Linux, or the README's prebuilt Python-3.10 zip on Windows. requirements.txt also brings in opencv-python, mediapipe, and segment-anything, so budget for a longer-than-usual install. If you want the live avatar preview panel to talk to editor.avatech.ai, launch with python main.py --enable-cors-header.
Common issues & troubleshooting
"I added the crease layer but the mesh looks exactly the same." That's the intended behavior - this node only allocates storage, it doesn't set values or turn on subdivision. If you're expecting to see rounded, smoothed geometry, you need an actual Subdivision Surface step reading those (still-zero) crease values, and you need to have set non-zero crease on the edges you care about.
The bpy import fails at ComfyUI startup. Check your Python version before anything else - bpy==3.6.0 will not install or load cleanly outside Python 3.10.x, and that's the single most common blocker with this whole pack, not anything specific to this node.
Not sure whether your graph needs this node. If nothing downstream reads edge crease - no Subdivision Surface modifier, no crease-setting node - you can skip this entirely. It's a prerequisite step for a specific technique (crease-controlled subdivision), not something every Avatar Graph workflow touches; the pack's own rigging templates lean much more heavily on the segmentation → mesh-layer → shape-key pipeline than on Blender's lower-level subdivision creasing.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| BPY_OBJopt | BPY_OBJ | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| BPY_OBJ | BPY_OBJ | — |