Save TripoSR Mesh
Writing your generated 3D model to disk
- mesh
This is the deliberately boring last stop in Mixlab's TripoSR pipeline. Load TripoSR Model loads the weights, TripoSR Sampler turns a single photo into a 3D mesh, and Save TripoSR Mesh takes that mesh and actually writes it to a file. No transforms, no options to speak of - it exists so the mesh your GPU just spent a few seconds building doesn't evaporate the moment the graph finishes.
The two fields on it are exactly what that job needs: mesh is the MESH object coming straight out of TripoSR Sampler, and filename_prefix (default TripoSR_) is what the saved file gets named, the same way filename_prefix works on ComfyUI's own SaveImage. There's no format picker, because there's nothing to pick - TripoSR's reference implementation (the one this node wraps) exports its mesh via marching cubes as an .obj file, and there's no reason to expect Mixlab's export path to differ. It has no outputs at all; it's a pure sink, the 3D equivalent of SaveImage, and it runs for its side effect rather than to hand anything downstream.
Worth setting expectations before you get here: what lands on disk is a rough mesh, not a print-ready or game-ready one. TripoSR is fast - a few seconds, roughly 6GB of VRAM - and that speed buys you a base shape, not a finished asset. Community reaction to the model split early between people getting clean results and people getting distorted geometry and an ugly, guessed-at backside, and the settled read is that it's genuinely useful for a low-poly base you pose, refine, or 3D-print after cleanup, not something you hand straight to a renderer. If you're printing, the workflow people actually use is TripoSR for the base shape, then a depth model like Marigold layered on top for surface detail before it goes to the printer - this node just gets you the raw base out of ComfyUI so you can take it into Blender, MeshLab, or a slicer for that next step.
Installing the pack is the standard route:
cd ComfyUI/custom_nodes
git clone https://github.com/shadowcz007/comfyui-mixlab-nodes.git
cd comfyui-mixlab-nodes
install.bat
or via ComfyUI Manager (search "comfyui-mixlab-nodes"), or pip3 install -r requirements.txt in a venv. This node itself needs no model download, but the two nodes upstream of it do: TripoSR's model.ckpt into models/triposr, and facebook/dino-vitb16 into models/triposr/facebook/dino-vitb16. Get those in place first - Save TripoSR Mesh only ever sees a mesh if the sampler upstream actually produced one.
If the run finishes but you can't find a file, check two things before assuming this node is broken. First, look in ComfyUI's normal output directory rather than somewhere custom - this node doesn't expose a path field, just a name prefix, so it saves wherever your other outputs go. Second, if you've run the same prefix repeatedly, later saves can overwrite or sit alongside earlier ones depending on how the pack numbers them; change filename_prefix between runs if you want to keep more than one mesh around. If instead the file is there but opens as garbage - degenerate geometry, a hole where the object should be - that's not this node's fault. It saves whatever MESH it was handed; a bad mesh means the problem is upstream, in TripoSR Sampler's resolution or threshold, or in the source image not being a clean, well-isolated subject. And if the topology is just plain rough - visible facets, no fine detail - that's the TripoSR trade-off itself, not a bug: decimate and smooth it in your 3D tool of choice rather than expecting this node, or the sampler before it, to hand you something print-ready on the first pass.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| mesh | MESH | — | |
| filename_prefix | STRING | TripoSR_ | — |
Outputs (0)
No outputs