We recently started collaborating with them to use our photogrammetry tiling pipeline on their captures. One photogrammetry model was provided to us spread across 3,428 individual COLLADA files with 6,922 images totaling about 453 megapixels of total textures.
The pieces were actually from Agisoft’s own LOD Tree format, which is conceptually similar to Cesium’s 3D Tiles. However, efficient hierarchical level of detail (HLOD) rendering on the web tends to be a little more complicated than the base “massive model” problem statement that hierarchical level of detail aims to solve.
Every tile that is rendered has to be “set up” with WebGL before it can be drawn, and this draw call overhead tends to be worse for WebGL than for native 3D APIs such as OpenGL, DirectX, or Vulkan. So in some situations, Drawing many small models is slower than drawing fewer larger models. For Cesium, every tile also has to be delivered over the internet, which futher complicates the file size/file count tradeoff.
Cesium Composer’s upcoming photogrammetry tiling pipeline has the ability to re-tile a large numbers of small models, such as the leafs from another HLOD format, and then construct a 3D tileset that is better optimized for Cesium’s 3D Tiles renderer. Our re-tiled version of GERST Engineers’ data consists of 226 individual tiles across the entire tileset, each under 2 MB to retain efficient delivery over the web. Here are a few screenshots:
Here is a view showing different levels of detail based on the camera’s distance. Move the slider to view the bounding boxes around the tiles.
Here is a wireframe view of the tileset at the highest detail. Observe the grid of “dense” areas in the mesh, which was what the original LOD Tree looked like. Move the slider to view the bounding boxes around our tileset’s tiles.
Re-tiling the original data also allows us to further optimize the tileset’s structure, as outlined in earlier posts. And since 3D Tiles is built on glTF, we also gain the efficiency benefits over interchange formats like COLLADA and the option to add Cesium-supported glTF extensions such as quantization for further reducing file size.
We’re thrilled that GERST Engineers is using Cesium and 3D Tiles for photogrammetry models! As always, if you have photogrammetry models that you would like us to tile, feel free to email me at firstname.lastname@example.org or tweet to @CesiumJS.