Nodes/Symbiotica/Trellis 2 Image to 3D (fal)
ComfyUI Node

Trellis 2 Image to 3D (fal)

Image to 3D without the ComfyUI-3D-Pack install nightmare

By symbiotica-ai·Created 6 months ago·Updated about 13 hours ago· 2
Trellis 2 Image to 3D (fal)
  • image
  • model_file
  • glb_url
resolution1024
texture_size2048
seed-1
api_key

Want to know the single most useful thing about this node? It runs Microsoft's TRELLIS.2 image-to-3D model without you ever installing ComfyUI-3D-Pack. That pack's compiled CUDA dependencies are the biggest time-sink in the 3D corner of the ecosystem - the community's highest-scoring TRELLIS threads are all "I made it run in 8GB" or "no install nightmare," not about the model itself. This node sidesteps the whole thing by calling TRELLIS.2 over fal.ai's hosted endpoint. Your GPU's workload is downloading a file.

The catch is the same as every hosted node: it bills per call and your image leaves the machine. TRELLIS.2 runs a couple of minutes synchronously on fal's side, so this is "pay for a mesh you can't render locally" territory. For a static prop or a 3D print reference, that's often worth it.

How it works

TRELLIS is the interesting one in image-to-3D. Instead of committing to one output format, its rectified-flow transformer generates a single structured latent (SLAT) that decodes into a mesh, gaussians, or a radiance field. TRELLIS.2 (the 4B successor) adds PBR materials - base color, roughness, metallic, opacity - and the "O-Voxel" sparse-voxel structure that handles open surfaces the original's iso-surface fields couldn't. The node takes the first frame of your input IMAGE, sends it to fal as a PNG data URI (no upload hop), and fal returns a model_glb URL. The node downloads it and saves it under output/3d/trellis2_<timestamp>.glb, then hands you the path and the URL.

A word of context before you pay for one: the community verdict on TRELLIS output is consistent - the silhouette and surface look great, the topology underneath is triangle soup. Great for a static prop or a 3D print. If it needs to rig or animate, budget for a retopology pass. The node doesn't fix that; no node does.

The inputs that matter

  • image - one IMAGE. Only the first frame of a batch is used, so don't feed a video.
  • resolution - voxel resolution of the geometry: 512, 1024 (default), or 1536. Higher is heavier and slower.
  • texture_size - baked PBR texture resolution: 1024, 2048 (default), or 4096.
  • seed - defaults to -1, which lets fal pick a random seed. Set a real number to make output reproducible.
  • api_key - optional; empty falls back to the Symbiotica.FAL_KEY setting or the FAL_KEY env var.

Outputs

  • model_file - a STRING with the relative path under your output folder (e.g. 3d/trellis2_12345.glb). Feed it into ComfyUI's Preview 3D node to inspect the mesh.
  • glb_url - the hosted download URL, if you want the file elsewhere.

Install

Part of the Symbiotica pack - install once, get every node:

cd ComfyUI/custom_nodes
git clone https://github.com/symbiotica-ai/comfyui-nodes.git symbiotica
pip install -r symbiotica/requirements.txt

Restart ComfyUI, or ComfyUI Manager → search Symbiotica → install. The pack's deps (requests, pillow, faster-whisper) are light; nothing 3D-heavy downloads. Then add a fal key in Settings → Symbiotica, or export FAL_KEY.

Common issues

  • "FAL_KEY is empty" - the node won't guess. Set it in Settings → Symbiotica, as the FAL_KEY env var, or on the api_key input.
  • "fal response carries no model_glb" - the endpoint returned without a mesh; usually a transient fal error. Retry.
  • Credits run out mid-run - fal is pay-per-call and locks out on an empty balance. That's not a node bug; top up at fal.ai.
  • Output looks low-poly or lumpy - that's TRELLIS.2, not a misconfiguration. Try 1536 voxels and 4096 textures if you need more, and remember the topology caveat above.

If you'd rather keep everything local and MIT, run TRELLIS.2 yourself - but then you're back to that install. For a one-off mesh, paying fal to skip the nightmare is a fair trade.

Categorysymbiotica/3D

Inputs (5)

NameTypeDefaultDescription
imageIMAGE
resolutionCOMBO1024Voxel resolution of the generated geometry
texture_sizeCOMBO2048Baked PBR texture resolution
seedINT-1-1–2147483647-1 lets fal pick a random seed
api_keyoptSTRINGfal API key; empty falls back to the Symbiotica.FAL_KEY setting or the FAL_KEY env var

Outputs (2)

NameTypeDescription
model_fileSTRING
glb_urlSTRING