๐ท Smooth Mesh (RDAWG)
De-facet a lumpy mesh without shrinking it to nothing
- mesh
- smoothed_mesh
- info
Scanned meshes are noisy. Photogrammetry and laser scans come out with a surface like an orange peel - technically there, but covered in bumps that aren't part of the object. RDAWG3DSmoothMesh is the pack's answer: it averages out those bumps so you get a clean surface to render, remesh, or analyze. It's the standard first move after a reconstruction, and it's the mesh-processing node you'll actually use.
How it works
Two smoothing filters from Open3D:
- taubin (default) - Taubin smoothing, a two-step pass that does one slightly-expanding smoothing followed by a contracting one. The magic: it reduces noise without shrinking the overall shape, which is the classic failure of plain Laplacian smoothing. This is the one to use on real geometry.
- laplacian - plain Laplacian smoothing. Simpler and slightly stronger, but it pulls every vertex toward its neighbors' average, so the whole mesh shrinks with enough iterations. Fine for a subtle touch; dangerous if you crank it.
iterations controls how many passes run (default 1, up to 50), and lambda_factor scales how strongly each pass moves vertices (default 0.5). The node keeps vertex/face counts identical - smoothing doesn't add or remove triangles, it just repositions vertices.
The inputs that matter
- method -
taubinunless you have a specific reason. - iterations - start at 1โ3. More passes = smoother and slower.
- lambda_factor - higher moves vertices more per pass. 0.5 is a sane default; push it up if one pass feels weak.
Outputs: smoothed_mesh (MESH) and info (STRING).
The classic sequence after a Poisson reconstruction: Smooth (kill the surface noise) โ Simplify (bring the triangle count down to something sane) โ render. Smoothing first, then simplifying, tends to give cleaner results than the reverse order.
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 import-time requirement (pip install open3d>=0.19.0, or python download_open3d.py on Windows for a wheel). Python 3.11 recommended. Watch the installer's torch 2.9.0+cu128 pin - don't let it clobber a working PyTorch.
Where people get burned
- The mesh shrank - you used Laplacian with several iterations. Taubin exists precisely to avoid this; switch methods.
- Detail vanished - too many iterations smooths away real features (ears, creases, text). Iterate low and eyeball.
- Sharp edges softened - expected from any smoothing. If the mesh has intentional hard edges, smooth with a tiny iteration count or skip and just simplify.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| mesh | MESH | โ | |
| iterations | INT | 11โ50 | โ |
| lambda_factor | FLOAT | 0.500.01โ2 | โ |
| method | COMBO | taubin | 2 options: taubin, laplacian |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| smoothed_mesh | MESH | โ |
| info | STRING | โ |