PointCloud: improve perceived loading speed
Summary
Currently, the loading of a point cloud with a high tree depth (9 for instance) is perceived as very slow because the loading of the COPC nodes is not prioritized.
By being a bit clever with prioritization, I think we can greatly improve the perceived loading speed. For instance, loading first the low-depth nodes, and then progressively the higher and higher-depth nodes. This is like progressive JPG: start by showing the user a low-quality version of the image and then refine it progressively. For us, this won't change the total data loaded (we still need the same COPC nodes), but just the order it is loaded.
Steps to reproduce
- Open a scene with a big, high-depth COPC file
- Zoom in close to the point cloud
- Notice how the high-depth nodes are loaded one by one, resulting in the loading seeming slow
Expected behaviour
As a user I want to see a usable version of the cloud as soon as possible, even if it is not the most precise.
Actual behaviour
I see big holes in the cloud, which are "filled" (loaded) quite slowly piece by piece.
Informations
- Giro3D version: 0.43.7
- Browser (Firefox, Chrome, Opera, Safari...) and version: Any
- OS (Linux, MacOS, Windows...): Any
Screenshots
Here is the cloud while it is being loaded: since high-depth nodes are loaded first, the cloud has big holes in it. These holes can take a while to get filled in.
