Nodes/ComfyUI/Hunyuan3D: Model to UV
ComfyUI Node Runs on cloud

Hunyuan3D: Model to UV

UV unwrapping without the Blender tutorial

By Comfy-Org·Created 4 years ago·Updated about 14 hours ago· 130,663
Hunyuan3D: Model to UV
  • model_3d
  • OBJ
  • FBX
  • uv_image
seed1

UV unwrapping is the least glamorous step in the whole 3D pipeline, and it's the one that decides whether a texture actually looks good. Hand-unwrapping a generated mesh in Blender is a whole evening of edge-seam roulette. Hunyuan3D: Model to UV just... does it, in the cloud. You feed it a mesh, it hands back clean OBJ and FBX files with a proper UV layout, plus the unwrapped UV image itself.

The name tells you where it lives: this is a Hunyuan3D Partner Node, one of the cloud nodes built into ComfyUI core. There's no install and no local GPU required - your mesh gets uploaded to Tencent's 3D service, a job runs on their servers, and ComfyUI polls until it's done. You log in with a ComfyUI Account, and the run draws down prepaid credits. The node shows a price badge estimating cost before you hit run, which is nice since nothing here is free.

What goes in, what comes out

Input is simple: a 3D model in GLB, OBJ, or FBX (the model_3d socket), plus a seed that's honestly just a "force this node to re-run" control - the tooltip says results are non-deterministic regardless of seed, so don't hunt for the magic number.

The catch is the face budget: the input model must have fewer than 30,000 faces. That's a real constraint, not a suggestion. Hunyuan3D's text-to-model node will happily emit 500,000+ faces, so if you hit a rejection, you need to cut geometry first - that's what Hunyuan3D: Smart Topology or the face_limit on the Tripo nodes are for.

You get three outputs:

  • OBJ and FBX - the same mesh, now with a clean UV layout laid out across each file, ready for any DCC or game engine
  • uv_image - the flattened UV map as a regular IMAGE tensor

That uv_image output is the sleeper feature. It's a standard image, so it drops into any ComfyUI image pipeline: paint on it, upscale it, run it through an img2img pass, then use it as your texture map. For a "texture this model" workflow it's genuinely handy to have the map laid out as a flat image you can work on locally.

Wiring it up

The obvious feeding source is the OBJ output of Hunyuan3D: Text to Model - generate the asset, then unwrap it. You can also pull a mesh from the built-in Load 3D & Animation node if you're starting from a file on disk. On the other end, the OBJ/FBX outputs plug into the built-in Save 3D Model node or the Preview 3D & Animation node to actually see what you got. Files also land in your ComfyUI/output folder automatically.

Gotchas worth knowing

The 30k face limit is the big one - plan your workflow around it rather than discovering it mid-run. Also remember this is a paid call: it's one of the cheaper Hunyuan3D post-processing nodes, but you're still spending credits every time you tweak the seed and rerun. Keep a working mesh, and only re-unwrap when the geometry actually changes.

It's a utility node, not a magic wand - you could do all of this in Blender for free. But if you're already in a ComfyUI workflow and you just want a clean, UV'd OBJ to move on with, this is the fastest path that exists right now.

Categorypartner/3d/Tencent

Inputs (2)

NameTypeDefaultDescription
model_3dFILE_3D_GLB,FILE_3D_OBJ,FILE_3D_FBX,FILE_3DInput 3D model (GLB, OBJ, or FBX)
seedINT10–2147483647Seed controls whether the node should re-run; results are non-deterministic regardless of seed.

Outputs (3)

NameTypeDescription
OBJFILE_3D_OBJ
FBXFILE_3D_FBX
uv_imageIMAGE