I have several tilesets where a portion of each tileset is below world terrain, because of this I’ve set depthTestAgainstTerrain to False. Other tilesets are below the main sea level terrain, having this set to false will cause the issue shown here: https://github.com/CesiumGS/cesium/issues/7879
Setting depthTestAgainstTerrain to true will fix the issue for tilesets below main sea level, but will obviously obscure tilesets below the world terrain. Is there anything I can do as a quick fix whilst waiting on the above issue to be resolved?
The best workaround I can think of here is keep depthTestAgainstTerrain = true and use clipping planes to clip out a section of the globe that the tileset occupies, which is the 3rd workaround discussed in this thread: How to get more zoom level on 3D Tiles with Terrain
Instead of manually defining the clipping planes, you could generate them such that they roughly cover the bounding rectangle of your tileset. This code example may be helpful:
The other idea is to create a GeoTIFF with height values in that area that are below your 3D Tileset, and upload that to Cesium ion and layer it on top of Cesium World Terrain. That way you can “push” the ground level in that area without removing the rest of the surrounding terrain.
Thanks for the this @omar. It doesn’t sound like the first suggestion will work as the tilesets are at angles / aren’t perfect squares so the user will be able to see a void through the surface terrain. The second option will also take too long as we could have hundreds of tilesets.
Along the same lines as your second option, we’re hoping to get updated terrain to stick on top of the world terrain where we can. For those we can’t i’m not sure, thinking out loud we may be ablt to toggle depthAgainstTerrain depending on the distance a tileset is from the camera depending on its elevation. Do you know if this issue: https://github.com/CesiumGS/cesium/issues/7879 is being worked on for an upcoming release?