Nodes/Avatar Graph/Mesh Wireframe
ComfyUI Node

Mesh Wireframe

Turning edges into real geometry in Avatar Graph

By avatechai·Created 3 years ago·Updated 2 years ago· 264
Mesh Wireframe
  • BPY_OBJ
  • BPY_OBJ
use_boundarytrue
use_even_offsettrue
use_relative_offsetfalse
use_replacetrue
thickness0.01
offset0.01
use_creasefalse
crease_weight0.01

Most of Avatar Graph's mesh nodes are working toward a rigged, textured character. Mesh Wireframe is a bit different - it's a stylistic tool. It converts a mesh's edges into actual solid geometry, replacing each edge with a thin beam, so instead of a flat-shaded surface you get a literal wireframe cage you can render, texture, or use as a prop. If you want a low-poly, "digital construct" or hologram-style look for part of an avatar or scene, this is how you'd get real 3D wireframe geometry rather than faking it with a shader.

How it works

It's a direct wrap of Blender's Wireframe modifier applied as an operator - the same effect as Blender's Wireframe modifier, but baked into real mesh data on the spot rather than left as a live, non-destructive modifier. Each edge of the source mesh becomes a thin solid tube or beam in the output; how thick, how evenly spaced, and whether it replaces the original mesh or adds alongside it are all configurable.

The inputs and outputs that matter

  • BPY_OBJ - the object to convert.
  • thickness (default 0.01) - how thick the wireframe beams are. This is the one setting that most visibly changes the result; too thick and the shape reads as solid again, too thin and it can disappear at a distance.
  • use_replace (default true) - whether the wireframe geometry replaces the original mesh or gets added on top of it. Turn this off if you want to keep the original solid mesh and layer wireframe on top as an accent.
  • use_boundary (default true) - whether open boundary edges get wireframed too, relevant for meshes with holes or open edges rather than fully closed surfaces.
  • offset (default 0.01) and use_even_offset - control how the wireframe geometry is positioned relative to the original surface; even offset keeps thickness visually consistent across differently-angled edges.
  • use_crease and crease_weight - mark the resulting edges with a crease weight, useful if you're feeding the result into a subdivision step afterward and want the wireframe to stay sharp rather than getting smoothed.

Output is a single BPY_OBJ, the converted mesh.

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

then pip install -r requirements.txt and restart. Needs Blender's bpy module, pinned to Python 3.10.x - a dedicated conda environment on macOS/Linux, or Avatech's prebuilt Python-3.10 ComfyUI zip on Windows with the pack installed through Manager afterward.

Common issues & troubleshooting

If the node won't load, that's the pack's Python-version pin, not this specific operator - check ComfyUI's startup console for an import error and confirm a clean Python 3.10.x environment with requirements.txt installed cleanly.

If the result looks like a solid blob instead of a wireframe, thickness is almost certainly too high relative to the mesh's actual scale - since the default (0.01) is an absolute unit value, not a percentage, it can look wildly different depending on how big your object is in Blender's world units. Scale it down for small objects, up for large ones, rather than assuming the default will look right on everything.

Categoryblender

Inputs (9)

NameTypeDefaultDescription
BPY_OBJoptBPY_OBJ
use_boundaryoptBOOLEANtrue
use_even_offsetoptBOOLEANtrue
use_relative_offsetoptBOOLEANfalse
use_replaceoptBOOLEANtrue
thicknessoptFLOAT0.010–10000
offsetoptFLOAT0.010–10000
use_creaseoptBOOLEANfalse
crease_weightoptFLOAT0.010–1000

Outputs (1)

NameTypeDescription
BPY_OBJBPY_OBJ