ComfyUI Node

Tripo 3D v3.1

A GLB out of a text prompt (or an image)

By Runware·Created 2 years ago·Updated about a month ago· 140
Tripo 3D v3.1
  • images
  • file_path
positivePrompt
negativePrompt
seed1
numberResults1
settings.autoSizefalse
settings.compressmeshopt
settings.exportUvtrue
settings.faceLimitfalse
settings.faceLimit_value500
settings.generatePartsfalse
settings.geometryQualitystandard
settings.imageAutoFixfalse
settings.orientationdefault
settings.pbrtrue
settings.quadfalse
settings.smartLowPolyfalse
settings.texturetrue
settings.textureAlignment(default)
settings.textureQualitystandard
settings.textureSeedfalse
settings.textureSeed_value0
ttlfalse
ttl_value60
outputFormatGLB

This is the odd one out in the pack, and the most fun. Runware_tripo_v3_1 generates actual 3D models - textured, watertight meshes - from a text prompt, an image, or both, and it's the one Runware node where nothing is required. Empty prompt, no images, just hit Queue and you get a GLB or FBX file back. It's Tripo's v3.1 model (tripo:v3.1@0) doing the generating, and the whole thing costs you exactly one API call.

Reality check on what you get: this is generation-quality 3D, not scan-quality 3D - think game-asset placeholder, concept prop, or starting mesh, not a production hero model. What makes it worth a node is the loop it enables: generate a 3D asset from text, or turn a 2D image (from any other node in this pack) into a 3D version of itself. Wire a Nano Banana output into images and you've got an image-to-3D pipeline in three nodes.

How it works

3dInference task with the tripo:v3.1@0 AIR. Text and images go up; the returned model file is downloaded to your ComfyUI output folder and the node returns a file_path string - note there's no native 3D viewer tensor, so the output is a path you feed to a file node or open externally. The settings.* group is where the mesh quality lives: pbr (physically-based rendering materials, on by default), texture, geometryQuality (standard/detailed), faceLimit, quad mesh output, generateParts for segmented editable parts, and smartLowPoly for a lightweight mesh on simple inputs.

The inputs that matter

  • images - the IMAGE input for image-to-3D. One clean, well-lit view of an object is the classic sweet spot.
  • positivePrompt - describe the object ("a ceramic mug with a blue glaze and a handle"). Empty works; detailed works better.
  • outputFormat - GLB (default) or FBX. GLB is the portable web/game format; FBX if you're feeding a DCC tool that wants it.
  • settings.faceLimit - the polygon budget; lower for a lighter mesh, higher for detail.
  • settings.autoSize - scales to real-world dimensions in meters, useful if the mesh has to fit a scene.
  • settings.generateParts - on for individual editable parts; costs more and isn't always needed.

Installing it

Install the pack. ComfyUI Manager → search Runware → install → restart. Manual:

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

Key from runware.ai/api-keys → ComfyUI Settings → Runware API key (or RUNWARE_API_KEY). No local 3D tooling needed - generation happens server-side.

Where people get burned

  • The output is a file path, not a 3D view. If you wire this into a preview and see a string, that's correct behavior - the model saves to your output folder and hands back where it put it.
  • Quality expectations. "Generation-grade, not production-grade" is the honest framing. Complex or multi-part subjects (the smartLowPoly tooltip flat-out warns it "may fail on complex models") come out rough.
  • Text-to-3D is harder than image-to-3D. The model is generally stronger when you give it a reference image than when you describe "a dragon in armor" from nothing.
  • 3D runs are heavier. A detailed, textured, part-segmented generation is one of the more expensive calls in the pack - check the title bar cost before batch-generating a model shelf.

Tripo 3D v3.1 is the "make me a thing I can orbit" node. It won't replace your modeler, but it's an outrageous amount of capability for one node and one API key.

CategoryRunware/3D/tripo

Inputs (25)

NameTypeDefaultDescription
imagesoptIMAGE
positivePromptoptSTRINGText prompt describing elements to include in the generated output.
negativePromptoptSTRINGPrompt to guide what to exclude from generation. Ignored when guidance is disabled (CFGScale ≤ 1).
seedoptINT11–20240919Random seed for reproducible generation. When not provided, a random seed is generated in the unsigned 32-bit range.
numberResultsoptINT11–4Number of results to generate. Each result uses a different seed, producing variations of the same parameters.
settings.autoSizeoptBOOLEANfalseScales the model to real-world dimensions in meters.
settings.compressoptCOMBOmeshoptCompression method for the output mesh.
settings.exportUvoptBOOLEANtrueEnables UV unwrapping on the output mesh.
settings.faceLimitoptBOOLEANfalseEnable to set settings.faceLimit. Off uses the model's default.
settings.faceLimit_valueoptINT500500–20000Maximum number of faces (polygons) in the output mesh. If not set, determined adaptively. Range depends on mode: 1000–20000 for low-poly, 500–10000 for quad.
settings.generatePartsoptBOOLEANfalseGenerates segmented 3D models with individually editable parts.
settings.geometryQualityoptCOMBOstandardControls the geometric detail level of the output mesh.
settings.imageAutoFixoptBOOLEANfalseOptimizes the input image for better 3D generation results.
settings.orientationoptCOMBOdefaultControls model orientation.
settings.pbroptBOOLEANtrueEnables physically-based rendering materials.
settings.quadoptBOOLEANfalseEnables quad mesh output.
settings.smartLowPolyoptBOOLEANfalseGenerates low-poly meshes optimized for simple inputs. May fail on complex models.
settings.textureoptBOOLEANtrueEnables texturing on the generated model. Set to false for a base model without textures.
settings.textureAlignmentoptCOMBO(default)Controls texture alignment priority.
settings.textureQualityoptCOMBOstandardResolution quality for generated textures.
settings.textureSeedoptBOOLEANfalseEnable to set settings.textureSeed. Off uses the model's default.
settings.textureSeed_valueoptINT00–20240919Seed for texture generation reproducibility.
ttloptBOOLEANfalseEnable to set ttl. Off uses the model's default.
ttl_valueoptINT60Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.
outputFormatoptCOMBOGLBFile format for the generated 3D model.

Outputs (1)

NameTypeDescription
file_pathSTRING