UltraShape Load Mesh
The plain loader that turns a mesh file into a TRIMESH socket
- mesh
Boring in the best way. UltraShape Load Mesh reads a mesh file off disk (GLB, OBJ, PLY, STL - whatever trimesh can open) and hands you a TRIMESH object. No sampling, no voxelization, no model required. It exists because the rest of the pack needed a way to get a mesh from disk into the TRIMESH world, which is the socket type the Trellis2 nodes and this pack's own interop nodes speak.
It's one of the four TRIMESH-interop nodes added in the pack's 0.2.0 update, and it sits on the "source mesh" side of the graph. Typical use: you have a coarse mesh file saved from an earlier run, load it here, then wire the mesh output into UltraShape Load Coarse Mesh From Trimesh so the refiner can sample it. It's also handy as a general mesh-to-TRIMESH utility if you're already living in the Trellis2 world and just need a file on disk turned into a socket.
Inputs and output
Exactly one input, one output:
path(string, defaultinput.glb) - the mesh file. Absolute paths work as-is. Relative paths resolve against your ComfyUI root, soinput/mesh.glbor evenoutput/mesh.glbboth work - note it does not auto-assumeinput/the way Load Coarse Mesh does; a baremesh.glbresolves to<ComfyUI root>/mesh.glb, which almost certainly isn't where you put it. Write the full relative path.mesh(output, typeTRIMESH) - the loadedtrimesh.Trimesh, loaded withforce="mesh"and merged primitives, ready to plug into Load Coarse Mesh From Trimesh or any Trellis2-family node.
If the file doesn't exist, the node throws a clear FileNotFoundError with the resolved path printed - the most common failure is a missing input/ prefix or a typo in the filename, and the error message tells you exactly what it looked for, so read it before retrying.
Install and the usual pack stuff
cd ComfyUI/custom_nodes
git clone https://github.com/jtydhr88/ComfyUI-UltraShape1
cd ComfyUI-UltraShape1
pip install -r requirements.txt
Restart ComfyUI. This node doesn't need the model weights at all - it's pure geometry loading - but you'll want ultrashape_v1.pt in ComfyUI/models/UltraShape/ for the rest of the graph anyway. ComfyUI Manager installs the pack as ComfyUI-UltraShape1.
Two honest caveats. First, the TRIMESH output socket only connects to nodes that advertise a TRIMESH input - if you don't have a Trellis2 pack or this pack's From Trimesh node, this node looks like a dead end. Second, it's a utility, not a feature: don't expect any preprocessing, normalization, or magic. If you just want to load a mesh and refine it, Load Coarse Mesh (the file-path one) is fewer nodes; reach for this one when your downstream is the TRIMESH ecosystem, not the refiner directly.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| path | STRING | input.glb | Absolute path or path relative to ComfyUI root (e.g. input/mesh.glb) |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| mesh | TRIMESH | — |