The Future of Point Cloud and 3DGS Workflows (Thinking Out Loud)

Sukovykhap
edited August 18 in Point Clouds

3D scanning is developing rapidly. LiDAR scanners are becoming more affordable and, consequently, more widespread. At the same time, photogrammetry, SfM, and other methods of obtaining 3D data from photographs and video are also developing rapidly.

In my work, I regularly deal with point clouds containing 150-500 million points. At the same time, the current point cloud engine in BricsCAD has a limit of around 50 million points. At these sizes, performance becomes a serious issue: the frame rate can drop to 5-10 FPS, making it difficult to work comfortably with the scene.

There are specialized engines that handle large point clouds significantly better. For example, CloudCompare allows comfortable work with substantially larger datasets.

BricsCAD also has a mechanism for working with images associated with E57 (bubbles). Currently, viewing an image opens a separate auxiliary window. This is not particularly convenient because the point cloud and the photograph are essentially two representations of the same survey data and should be viewed together.

Some specialized applications, such as 3D Survey, display the point cloud and panoramic imagery directly in the same viewport. You can see both the point cloud and the image simultaneously and control their relative transparency. A similar approach is used in a number of applications supplied with SLAM scanners.

The next step in this direction is 3D Gaussian Splatting (3DGS).

3DGS provides a significantly more informative visual representation of a reconstructed scene than a conventional point cloud. When navigating through the scene, the user is essentially working with a photorealistic 3D reconstruction rather than simply a collection of points or separate panoramic images.

For CAD, this becomes particularly interesting if 3DGS is integrated directly into the standard BricsCAD viewport rather than implemented as a separate viewer.

For example, the Visual Styles could include a mode such as "Hidden + 3DGS"

This mode could display simultaneously:

  • the existing condition of the object as 3DGS;
  • regular CAD geometry;
  • the point cloud when required;
  • UCS, Orbit, clipping, and other standard viewport tools.

This would allow the design geometry to be directly compared with the actual condition of the object without switching between different applications or windows.

I see two clear directions for the future development of BricsCAD:

  1. Improved performance when working with large point clouds. The amount of data produced by modern LiDAR, SLAM scanners, and photogrammetry is constantly increasing. 50 million points is already insufficient for many real-world applications.
  2. Native 3DGS support directly in the BricsCAD viewport. Ideally, this would be part of the standard visualization system, similar to the existing Visual Styles.

Is the Bricsys team currently working in these areas? Are there plans to significantly improve the performance of the point cloud engine and add native 3DGS support?

It is also worth noting that 3DGS already has practical implementations in existing 3D engines and applications. There are ready-made solutions and integrations for working with Gaussian Splats in Unity, and there is also an ecosystem of tools for Blender.

There is also the free open-source project SuperSplat, which runs directly in a web browser and allows users to view, edit, and optimize 3D Gaussian Splats. Its viewer uses WebGPU with a fallback to WebGL.

Therefore, the technology itself is already mature enough to be considered a practical option for integration into a CAD viewport rather than an experimental concept.

The main task for BricsCAD would be integrating the corresponding GPU rendering into the existing viewport and making it work together with standard CAD geometry.

Comments