Cesium Inspector Broken? Terrain tile questions

I have written a QM terrain tile generator and while for the most part it appears to be working I still have a problem when I rotate around a tile the view will suddenly go black. What is the most likely cause of this?

What is the best way to verify that all the tile information is correct. Is there any detailed documentation that can help with this task.

Also using Cesium Inspector the Min , Max fields after picking a terrain tile always says undefined even when using Cesium’s terrain data. Is this working correctly?

Can we also please get more information added to the inspector to show a terrain tile bounding sphere etc or is there even free tools to look at a single terrain tile. Thanks in advance.

Thanks for reporting this issue! It looks like the inspector min/max is broken in 1.55, possibly due to the big terrain overhaul. I opened a GitHub issue:

https://github.com/AnalyticalGraphicsInc/cesium/issues/7672

It does work in 1.54 so you could temporarily use that for debugging. If you haven’t already seen it, there is some discussion about generating QM tiles here that may be helpful:

https://groups.google.com/d/msg/cesium-dev/jZ0t0hD7zFk/kwTh9Kf_AwAJ

Thanks again Omar.
Turns out just like in the other discussion I too had a culling problem. I managed to fix all my bugs and its now working :slight_smile:

Another question if I may. If you want to have Cesium recall a terrain tile because height data has changed. Is there a method to do this. That is mark the tile dirty so to speak. Or even force Cesium to ask for all current tiles again.

You mean specifically if the terrain height reported by the server changes? I’m not sure that the terrain loader in Cesium can account for that scenario. How often would this height be changing in your application?

It might be just a matter of setting a tile’s terrainState to unloaded, so it requests its geometry on the next frame:

https://github.com/AnalyticalGraphicsInc/cesium/blob/master/Source/Scene/GlobeSurfaceTile.js#L382

But it might be a bit more involved to trigger a release of the current resources/recreate the tile.

It’s a live work site so data which update frequently. We can notify the client via ASP.Net core SignalR of changes so it is really just a case of making saw the user sees the latest view on screen and not some cached view from earlier.
I come back to this problem later and I am not there yet and need to experiment more.

I think this is definitely something on our radar to support with 3D Tiles, to be able to see a site evolve over time (and eventually terrain will be incorporated into 3D Tiles).

As a workaround for now, you could re-set the terrain provider, which will reload all terrain in the scene and looks like a little ugly, but should work:

viewer.terrainProvider = Cesium.createWorldTerrain();

``