Point Cloud is a huge array of objects, which contain only position and color. How can we use this array to draw our 3D scene maximally realistic?
We can represent each point by a special square and choose the size of the square so that we have minimal voids in solid objects but conversely we would want to have minimal overlaps between squares themselves.
Let's consider three adjacent localized points within any given cloud.
This ideal situation would be if the cloud point Size is defined exactly equal to the distance between the nearest adjacent points. In this case we don’t have any voids between squares as well as not having overlaps.
In a less ideal situation, we have point’s squares that are smaller than the minimal distance between points. In this case, we will comprehend solid objects as transparent ones and the resulting 3D scene can become ghostly. Notice that the distance between points is the same.
Alternatively, when we have too large squares for point representation we relate an overlap that distorts the form of objects and we observe a decrease in render performance because of the resulting big fill rate.
Three site images are represented below. On each image we can see identical point cloud base data from the same camera position but the size of the point is different.
On Image 1 the point size is approximately equal to minimal distance between nearest adjacent points:
On Image 2 the point size is three times less than that on Image 1:
And finally, on Image 3 we have point size 6 times greater than on Image 1:
Revizto supplies a tool from which we can maintain the equality of point size and minimal distance between cloud points. If we navigate to Edit/Visual Effects dialog we can see two sliders at the bottom part of the screen:
These are the two parameters of square Size and separation Distance which were discussed above. When we change Size we move a special mark “Optimal” on the Distance slider. Therefore we can gauge that we will have the best visual quality when the sliders are reflecting the same positions.
In a new project Distance and Size are set to the default value (0.1 feet). It’s better to change it before the first export. The smaller the set Distance, the more memory Revizto requires for graphics process baking. We recommend setting as large distance as acceptable for the scenes visual resolution. This increases performance and allows the data set to be transferred across more platforms, especially mobile devices where RAM is at a premium. Moreover, greater point Distance reduces the amount of memory required from the workstation for undertaking the bake.
The changing of Size is on the fly. You can see the result immediately. The changing of Distance requires re-baking. For large point clouds, it can take several hours. Take it into account when changing the Distance! If you want to save changes you have to press Apply otherwise the changes will be canceled.
It’s worth reiterating that the Distance between points decreases with increasing distance to camera. Our point squares described above must behave the same way. The size of point decreases by the perspective law for all platforms supported by Revizto. Due to this rule we can supply the optimal covering for any given distance.