Hunyuan3D: Text to Model
Prompt, face count, and a fully textured GLB
- model_file
- GLB
- OBJ
- texture_image
Want the other big cloud 3D generator in your ComfyUI graph? Hunyuan3D: Text to Model is Tencent's answer to Tripo, and it takes a slightly different route: one prompt, a face count you control, and a finished asset with geometry, UVs, and PBR textures on the other side. It's built into ComfyUI core - search "Hunyuan3D" in the node palette and it's there, no install.
Like every partner/3d node, this one is a cloud call dressed as a local node. Your prompt goes to Tencent's Hunyuan 3D service via Comfy's proxy; a job runs on their hardware; ComfyUI polls until it's done. Login is your ComfyUI Account, payment is prepaid credits, and the node's price badge estimates the run before you commit. Nothing here is free, and this one scales its price with how many faces you ask for - so the default matters.
The inputs that matter
- model -
3.0or3.1. The current-gen choice is 3.1. One gotcha baked into the tooltip: LowPoly is unavailable on 3.1, so if you want a low-poly run you have to step down to 3.0. - prompt - up to 1024 characters, multiline. This is the whole creative payload; be specific.
- face_count - 3,000 to 1,500,000, defaulting to 500,000. This is the dial that makes the output cheap or expensive, game-ready or render-bloated. The default is a lot of geometry - drop it if you don't need it, because it directly inflates the credit cost.
- generate_type - a dynamic combo that morphs depending on your choice. Normal gives you a PBR toggle (materials on/off). LowPoly adds a
polygon_typepicker (triangle vs quadrilateral). Geometry skips texturing entirely for the cheapest run. - seed - the tooltip is blunt: it just controls whether the node re-runs, and results are non-deterministic regardless of seed. Don't fight it.
What comes out
Four outputs: the model_file string, a GLB (the main asset, with textures baked in), an OBJ, and a texture_image. The OBJ is interesting - Tencent returns OBJ results as ZIPs, and the node unpacks the mesh plus its texture maps (metallic, normal, roughness when PBR is on) into usable outputs. Wire the GLB into Preview 3D & Animation or Save 3D Model; keep the OBJ + texture_image if you want the mesh and maps separately for a DCC like Blender.
From here the workflow branches: the OBJ feeds Hunyuan3D: Model to UV for a clean unwrap (mind the 30k face cap there), or Hunyuan3D: Smart Topology when the default face count produced something no game engine would thank you for.
Real talk
The seed non-determinism and the credit-scaled face count are the two things that catch people. If you're here for quick concept assets, run Geometry mode at a modest face count to keep costs low, then decide if you need the full textured pass. And as a heads-up: the community's experience with Hunyuan3D texturing locally has been "paint model is the weak link, textures get lost on OBJ export" - this API node dodges that by baking everything into the GLB, which is precisely why the GLB is the output you should keep.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| model | COMBO | The LowPoly option is unavailable for the `3.1` model. | |
| prompt | STRING | Supports up to 1024 characters. | |
| face_count | INT | 5000003000–1500000 | — |
| generate_type | COMBO | 3 options: [object Object], [object Object], [object Object] | |
| seed | INT | 00–2147483647 | Seed controls whether the node should re-run; results are non-deterministic regardless of seed. |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| model_file | STRING | — |
| GLB | FILE_3D_GLB | — |
| OBJ | FILE_3D_OBJ | — |
| texture_image | IMAGE | — |