๐ท Point Cloud to Mesh (RDAWG)
Reconstruct a solid surface from a cloud of points
- point_cloud
- mesh
- info
Point clouds are great for capturing, but they're just dots - you can't render a surface, measure a volume, or 3D-print a cloud. RDAWG3DPointCloudToMesh is where the pack turns those dots back into a proper triangle mesh, via Open3D's surface-reconstruction algorithms. It's the return trip from the point-cloud pipeline, and it's the node that makes the whole Load โ Downsample โ Clean โ Reconstruct chain useful.
If your source is a mesh file, you don't need this. If your source is a scan or a depth conversion, this is where your object actually becomes an object again.
How it works
Three reconstruction methods, each with different strengths:
- poisson (default) - builds a watertight surface by solving a Poisson equation over the point cloud. The go-to for clean, closed shapes.
depth(1โ12, default 8) controls the octree resolution: higher = more detail and more triangles. The node also trims the lowest-density 1% of vertices, which kills most of the reconstruction artifacts around the cloud's edges. - alpha_shape - wraps the points with a surface controlled by
alpha(smaller = tighter to the points, more holes; larger = looser, blob-like). Good for point-only shapes where you don't want watertight. - ball_pivoting - rolls a virtual ball of the given
radiiover the points to connect them. Great for dense, clean scans with even spacing; fragile on noisy data.
All three need normals - if your cloud lacks them, the node estimates and orients them automatically. Output is a standard MESH plus an info string with the original point count, mesh vertex/face counts, and the method's key parameter.
The inputs that matter
- method -
poissonis the default and usually right. - depth - poisson detail level. Start at 8; drop it if you're getting tens of millions of triangles.
- alpha - for alpha_shape; smaller = tighter.
- radii - for ball_pivoting; a comma-separated list like
"0.005,0.01,0.02,0.04"(the default). The ball grows through these radii to bridge gaps.
Outputs: mesh (MESH) and info (STRING). The mesh plugs into smoothing, simplifying, analysis, or straight into the 3D-to-Image render.
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). Python 3.11 recommended. Mind the installer's torch 2.9.0+cu128 pin if you already have a working PyTorch.
Where people get burned
- Huge triangle counts - Poisson at depth 8+ on a dense cloud can produce millions of triangles that slow everything downstream. Reconstruct at a lower
depth, or run Simplify Mesh afterward. - Blobby, over-smoothed surface - depth too high on a noisy cloud, or you skipped Remove Outliers. Clean first, then reconstruct.
- "Reconstruction failed" on sparse clouds - ball_pivoting especially needs dense, even points. Downsample less aggressively, or switch to Poisson.
- Holes where they shouldn't be - alpha_shape too tight. Raise
alphaa bit.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| point_cloud | POINT_CLOUD | โ | |
| method | COMBO | poisson | 3 options: poisson, alpha_shape, ball_pivoting |
| depth | INT | 81โ12 | โ |
| alpha | FLOAT | 0.0300.001โ0.5 | โ |
| radii | STRING | 0.005,0.01,0.02,0.04 | โ |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| mesh | MESH | โ |
| info | STRING | โ |