UV Blender Cylinder (backend)
The unwrap for everything round and vertical
- trimesh
- unwrapped_mesh
- info
Bottles. Pipes. Mugs. Vases. Tree trunks. Cans. Any object whose shape is basically "something wrapped around a vertical axis" deserves a cylindrical unwrap, and that's exactly what UV Blender Cylinder gives you: project the surface onto a cylinder, roll it out flat, and every point around the circumference maps to a clean strip of UV space. No clever topology handling, no distortion gymnastics - just the right tool for a common shape.
It's the blender_cylinder backend in the UV Unwrap dropdown, or searchable directly as "UV Blender Cylinder (backend)".
How it works
Cylindrical projection assigns UVs by rotating around a central axis: the angle around the cylinder becomes the U coordinate, and the height along the axis becomes the V coordinate. The surface "unrolls" like peeling the label off a tin can. It's near-perfect for true cylinders - no stretching around the circumference - and it degrades gracefully on things that are only roughly cylindrical. The classic artifact is at the seam where the cylinder wraps back around on itself, which you'll want to hide or align with an actual edge on your model.
Two inputs:
cylinder_radius(default 1, 0.1–10) - the radius of the projection cylinder. It mostly controls how the U coordinate wraps and the aspect of the resulting island; adjust if the unwrap looks horizontally squeezed or stretched.scale_to_bounds(default true) - rescale the islands to fill the 0–1 UV bounds. On by default for a reason.
Outputs
unwrapped_mesh (TRIMESH with UVs) and info (STRING).
When to use it
Anytime your object's dominant axis is a straight line and the silhouette is round: beverage containers, pipes and conduits, plant stems, even arms and legs if you're being pragmatic about character UVs. If the model bulges or bends a lot, expect stretching at the extremes - that's when blender_smart (or the libigl methods) take over. And remember the blender_* caveat: these backends execute Blender's own code, so a working Blender install configured for the pack is required. A Blender-flavored error is almost always an environment problem, not a geometry one.
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. The experimental comfy-env/pixi installer makes the first run slow - let it finish before judging the pack.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| trimesh | TRIMESH | — | |
| cylinder_radius | FLOAT | 1.00.1–10 | — |
| scale_to_bounds | COMBO | true | 2 options: true, false |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| unwrapped_mesh | TRIMESH | — |
| info | STRING | — |