Preview Mesh
Actually see your mesh before you export it
- trimesh
- voxelgrid
Working with geometry in the dark is misery. Preview Mesh is the pack's interactive 3D viewer, and it's the node that makes everything else usable - you remesh, decimate, repair, unwrap, and then look at the result before you trust it. ComfyUI shows images natively, but a mesh isn't an image, so this node renders your TRIMESH in an embedded VTK.js viewer right in the UI. No output wires, because it's the end of the line: the output is the display.
How it works
You feed it an optional trimesh (or a voxelgrid, if you're working with volumetric data) and pick a mode:
- fields (default) - the workhorse. Exports the mesh to VTP (VTK's format) and shows it in the VTK.js viewer, so you can inspect vertex or face fields, wireframes, and geometry structure.
- texture - exports GLB instead, to preserve materials, textures, and UVs. Use this when you've UV-unwrapped or baked and want to see the paint job.
- texture (PBR) - GLB with a PBR viewer (Three.js), for when material roughness/metalness actually matter.
There are no outputs at all - it's marked an output node and everything happens in the UI. That's the design: it's your inspection bench, not a passthrough.
Why it's the node you'll use constantly
Because every other node in this pack mutates your mesh and you need eyes on the result. Did Decimate Mesh destroy your silhouette? Is that hole actually closed after MeshFix? Does the UV unwrap have wasted space? You can't tell from numbers. The pack even copies a whole family of viewers (VTK, textured, dual, PBR, point cloud) into its web folder on startup - this node is the flagship of a pack that clearly believes visualization is part of the pipeline, not an afterthought.
Installing it
cd ComfyUI/custom_nodes
git clone https://github.com/PozzettiAndrea/ComfyUI-GeometryPack.git
cd ComfyUI-GeometryPack
pip install -r requirements.txt --upgrade
python install.py
Or ComfyUI Manager → GeometryPack → Install, restart. The viewer files get copied into web/ by the prestartup script - if the preview pane shows a blank box, that copy step likely failed, so check the ComfyUI console for "Failed to copy viewer" warnings.
Where people get burned
A blank viewer on first use is the top report - it's usually the prestartup copy of the viewer JS silently failing, which an update (or a manual restart of ComfyUI) fixes. Also worth knowing: this is a viewer, not an exporter - if you want the mesh out of ComfyUI, pair it with Save Meshes to Folder rather than hoping the preview has a save button. And it's part of a young, fast-moving pack, so if the viewer breaks after an update, that's the author's bug-report lane (the README asks for exactly that) - not your mesh's fault.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| mode | COMBO | fields | 3 options: fields, texture, texture (PBR) |
| trimeshopt | TRIMESH | — | |
| voxelgridopt | VOXELGRID | — |
Outputs (0)
No outputs