๐ท Simplify Mesh (RDAWG)
Shrink a mesh's triangle count before your render chokes
- mesh
- simplified_mesh
- info
Downloaded models are notoriously overbuilt - a "low-poly" game asset from a marketplace can still ship with hundreds of thousands of triangles, and a photogrammetry export can run into the millions. Every downstream step (smoothing, remeshing, rendering, analysis) pays for every triangle. RDAWG3DSimplifyMesh is the pack's decimation node: it collapses a mesh down to a target triangle count while keeping the silhouette recognizable.
It's the node you reach for when something is technically fine but practically unusable - the render crawls, the analysis takes forever, or you just need a light proxy for a scene you're building.
How it works
Two decimation strategies from Open3D:
- quadric (default) - quadric edge-collapse decimation, the standard algorithm in this space. It iteratively merges edges while minimizing geometric error, which is why it preserves shape so well at aggressive reduction levels. Uses
target_trianglesandpreserve_boundaries(keeping open edges intact so you don't tear holes in non-watertight models). - shortest_edge - despite the name, the current code routes this through vertex clustering: it buckets vertices into a voxel grid and collapses each cell to one vertex. Cruder, and the reduction quality is more about grid resolution than your target count. Fine for aggressive quick-and-dirty reduction.
If the mesh already has fewer triangles than your target, it passes through unchanged and the info string tells you so. The node recomputes normals on the result.
The inputs that matter
- target_triangles - the count to reach, 100 to 100,000, default 1,000. Start at 1,000 and inspect; you can always reduce less.
- preserve_boundaries - keep on for open meshes, off if you don't care about edge integrity.
- method -
quadricis the one you want in almost every case.
Outputs: simplified_mesh (MESH) and info (STRING) with original vs. simplified triangle counts and reduction percentage.
Install
Part of the RDAWG 3D Pack. ComfyUI Manager (search "RDAWG 3D Pack (CUDA 12.8 + PyTorch 2.9.0)") or:
cd ComfyUI/custom_nodes
git clone https://github.com/rdawgemfl/rdawg_3D_pack
cd rdawg_3D_pack
python install.py
Open3D 0.19.0+ is a hard requirement - no Open3D, no pack (pip install open3d>=0.19.0). Python 3.11 recommended. Be careful with the installer's torch 2.9.0+cu128 pin if you already have a working PyTorch.
Where people get burned
- Over-aggressive targets - 1,000 triangles on a detailed character model mangles it. Quadric decimation is good, not magic; go iterative and eyeball the result.
- Boundary collapse - with
preserve_boundariesoff, open meshes (a terrain tile, a garment) develop holes. Keep it on unless you know better. - Normals look off after reduction - the node recomputes them, but if a downstream render looks faceted, run Smooth Mesh after simplifying.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| mesh | MESH | โ | |
| target_triangles | INT | 1000100โ100000 | โ |
| preserve_boundaries | BOOLEAN | true | โ |
| method | COMBO | quadric | 2 options: quadric, shortest_edge |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| simplified_mesh | MESH | โ |
| info | STRING | โ |