UV Blender Smart (backend)
Blender's general-purpose unwrap, in your graph
- trimesh
- unwrapped_mesh
- info
If you've unwrapped anything in Blender, you know Smart UV Project: the "just make it work" unwrap that cuts the mesh into pieces based on how much the surface angles change, then flattens and packs those pieces. UV Blender Smart drops that exact tool into ComfyUI as the blender_smart backend of the UV Unwrap node. It's the fastest route from "random triangle soup" to "a texture layout that mostly doesn't embarrass you," and for most hard-surface work it's good enough that you'll never reach for anything fancier.
Searchable directly as "UV Blender Smart (backend)" if you'd rather skip the dropdown.
How it works
Smart UV Project finds the sharpest angle changes in your mesh - places where the surface bends a lot - and cuts there, creating islands (charts) that are relatively flat. Each island gets a planar projection, and then the islands are packed into the UV square with a margin between them so you don't get texel bleed when baking. The key dial is the cut threshold: raise it and fewer cuts happen, meaning bigger islands and more per-island distortion; lower it and the mesh shatters into many small, clean islands.
Three inputs:
angle_limit(default 66°, 1–89) - the maximum angle between faces before they get separated into different islands. This is your fidelity-vs-continuity tradeoff. Lower angle = more, smaller islands; higher = fewer, bigger islands with more stretching. 66 is the Blender default and a fine starting point.island_margin(default 0.02, 0–1) - the space left between islands in UV space. Larger = safer against texel bleed, but wastes texture resolution. 0.02 is tight but workable; bump it if baked textures show seam bleeding.scale_to_bounds(default true) - rescale the packed layout to fill the 0–1 bounds.
Outputs
unwrapped_mesh (TRIMESH with UVs) and info (STRING). Feed into a UV preview or a texture bake.
When to use it
This is the default answer for hard-surface objects - buildings, mechanical parts, furniture - where you want decent, low-seam UVs without hand-placing seams. Organic, continuous surfaces will show more distortion than the libigl methods, and truly closed shapes are handled better here than by harmonic/ARAP precisely because Smart will happily cut its own seams. Same Blender dependency as the other blender_* UV nodes: it runs Blender's code, so a configured Blender install is required. If it errors in a Blender-flavored way, fix the environment, not the mesh.
Install: ComfyUI Manager search "GeometryPack", or clone https://github.com/PozzettiAndrea/ComfyUI-GeometryPack into custom_nodes/ and run pip install -r requirements.txt --upgrade + python install.py, then restart. First run with the experimental comfy-env/pixi installer is slow but normal for this pack.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| trimesh | TRIMESH | — | |
| angle_limit | FLOAT | 661–89 | — |
| island_margin | FLOAT | 0.020–1 | — |
| scale_to_bounds | COMBO | true | 2 options: true, false |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| unwrapped_mesh | TRIMESH | — |
| info | STRING | — |