Nodes/ComfyUI-ExternalAPI-Helpers/Tripo Image-to-3D (API)
ComfyUI Node

Tripo Image-to-3D (API)

Turn a photo into a .glb you can actually use

By Aryan185·Created about a year ago·Updated about a month ago· 14
Tripo Image-to-3D (API)
  • image
  • glb
model_versionv2.5-20250123
texture_qualitystandard
api_key
save_nametripo_img_model
seed69
texture_seed420
face_limit20000
texture_size1024
pbrtrue

ComfyUI is mostly a 2D and video tool, so a node that outputs a 3D model file feels like a party trick - until you actually need one. Tripo Image-to-3D takes an image you already have (a render, a photo of an object, a character sheet) and produces a textured 3D mesh as a .glb file via Tripo AI's API. It's the fastest way to go from "image" to "model I can drop into Blender or a game engine" without touching a single 3D app.

The honest use case: you've generated a reference image of a character or prop, and you want a low-poly, textured mesh of it for a project. Tripo's output isn't production-grade sculpting - it's a solid starting mesh, and for many uses it's good enough as-is.

How it works

The node uses Tripo's REST API (api.tripo3d.ai). It uploads your image as a PNG, creates a generation task with your chosen model version and settings, then polls the task until the model is ready and downloads the result. The .glb file is saved to your ComfyUI output directory with your save_name plus a timestamp. That last detail matters: the node's output is a path string, not a 3D object - it tells you where the file landed.

The inputs that matter

  • image - the source image to turn into a mesh. A clean, single-subject image with a plain background gives the best results.
  • model_version - v3.0-20250812 (newest), v2.5-20250123 (the solid default), v2.0-20240919, or v1.4-20240625. Newer versions make better geometry; keep the default unless you have a reason to pin an older one.
  • texture_quality - standard or detailed. Detailed costs more and takes longer; use it for close-up work.
  • save_name - the filename prefix for the saved .glb. Worth setting something descriptive, because the timestamp suffix makes duplicates otherwise.
  • api_key - Tripo API key (from tripo3d.ai) in the field or .env (TRIPO_API_KEY).

The optional inputs are where the quality lives:

  • seed and texture_seed - seed for geometry, texture_seed (default 420) for the randomness of colors/textures.
  • face_limit - max triangles in the mesh, 500–100000, default 20000. Higher = smoother but heavier. 20k is a good game-asset middle ground.
  • texture_size - 512 / 1024 / 2048. The texture resolution; 1024 is the default and usually enough.
  • pbr - on by default; includes realistic lighting maps (normal/roughness etc.) with the model, which matters if you're taking it into a PBR renderer.

The output

glb - a STRING. It's the file path to the saved .glb in your output directory. Don't wire it expecting a mesh object - it's a path you can read, log, or pass to another tool.

Installing it

One of ~20 nodes in the Aryan185/ComfyUI-ExternalAPI-Helpers pack:

cd ComfyUI/custom_nodes
git clone https://github.com/Aryan185/ComfyUI-ExternalAPI-Helpers.git
cd ComfyUI-ExternalAPI-Helpers
pip install -r requirements.txt

Restart ComfyUI; find "Tripo Image-to-3D (API)" under 3D/generation. It only needs requests beyond the usual. Grab a Tripo API key from tripo3d.ai, paste it in or set TRIPO_API_KEY in .env. There's also a Tripo Text-to-3D node in the same pack if you want to start from a prompt instead.

Where people get burned

The output being a path string surprises everyone once. Also, Tripo bills per task, and detailed texture + 2K texture size + high face limits stack the cost on a job that already takes a while to poll. Iterate cheap (standard texture, 1024, default face limit), then run the expensive settings for the final. And the geometry quality depends heavily on your input image - a busy, cluttered photo gives a lumpy mesh. Give it a clean subject and it rewards you. For "I need a 3D model of this thing and I have an image," it's the least-effort route available.

Category3D/generation

Inputs (10)

NameTypeDefaultDescription
imageIMAGE
model_versionCOMBOv2.5-202501234 options: v3.0-20250812, v2.5-20250123, v2.0-20240919, v1.4-20240625
texture_qualityCOMBOstandard2 options: standard, detailed
api_keySTRINGTripo API key or .env variable name (TRIPO_API_KEY)
save_nameSTRINGtripo_img_model
seedoptINT690–2147483646
texture_seedoptINT4200–2147483646Controls randomness of colors/textures.
face_limitoptINT20000500–100000Max triangles in mesh.
texture_sizeoptCOMBO10243 options: 512, 1024, 2048
pbroptBOOLEANtrueInclude realistic lighting maps.

Outputs (1)

NameTypeDescription
glbSTRING