Unable to load tileset.json with region boundingVolume but it works with sphere and box

Thanks for the extra details and explanation Alex! This sounds like a good approach.

You are correct that the boundingVolumes do not define an origin or transform the tileset in any way. It’s simply a way to mark where the tileset lives, so that engines can do things like only request the tiles when the tileset is in view.

For setting up the matrices, CesiumJS has a bunch of helper functions that could be useful here. This post describes my workflow of using CesiumJS to output the right transform and some sample code:

https://groups.google.com/d/msg/cesium-dev/0K_RXY0gIM4/7oOusxzBAwAJ

For geometric error, the best resource I can give you is the spec’s take on t:

I haven’t implemented it myself so I’m not aware of all the nuances. But one thing you could do to keep moving forward is once you’ve extruded the OSM data is to upload it to cesium ion just to be able to test how it should all look.

Feel free to keep updating this thread with progress!