Hello we have a project where we use KMZ/Collada models to represent facilities/buildings.
When uploading these kmzs into cesium ion and after the tiling process, we observe that for some of the buildings the lower part of the building gets stretched to the bottom until touching the terrain.
Is that something that happens as a part of the tiling process?
If yes, under which circumstances? We have some other models where this effect cannot be observed, for example this one, where the building is actually “flying” because the altitude an tilting is not correctly set.
When you upload your data, do you select the Clamp to terrain option? This is part of that feature: we add a “skirt” to the bottom of each building so that it becomes flush with uneven terrain.
If you tell us more about how you would like to control this (and any other details about what result you would like to see), I’d be happy to open a feature request.
thanks a lot for the response. We select the reference terrain “Cesium World Terrain” when uploading the model", is that what you mean with clamp to terrain?
Apologies—the options around this differ for KML/COLLADA vs. CityGML. Would you mind please sending us the KML/COLLADA data you are using so that I could reproduce the problem you are seeing? The easiest way would be to provide me with an ion asset ID of a set of files you uploaded.
sorry we missed your last answer. We are still observing the same behavior, and it seems that it happens or not depending if the whole model is touching the terrain or not, I give you three ION IDs where you can see the difference:
1171117, 1171136 and 1171261
You can see that the first two get some glitches, as the model is positioned so it does not touch the floor with all its sides.
The last one looks better as the whole bottom touches the floor.
This is intended to be a feature of the tiling process rather than a glitch.
When you are trying to place a building with a flat ground level on a terrain that is sloped or has undulations, then that building can appear to be floating in the air above the ground. In the examples you have shared, one side of the building would always end up floating, which I don’t believe is desirable.
If we tried to place a building where its at its lowest possible ground height, then its possible that another part of the building “sinks” beneath the ground too, and the height of the building, for example in the lower-right corner is not accurately represented above the ground.
In the 1st two screenshots, the building is being raised and “skirts” are being added, in the 3rd screenshot, the building is made to sink underground partially.
So its a matter of perspective on which representation is correct. The tiling pipelines use the skirt path as that is more robust and doesn’t sink buildings underground.
I hope this explanation helps. Please let me know if you have any questions.
thanks a lot for your explanation. That made the behaviour more clear for me, and that makes sense so far. One question I still have is, why does the skirt get such strange artifacts like in the first two screenshots? Is there a way to improve that or make it more reproducible?
The material used for the skirts is an extrapolation of the material used for the vertices at the bottom. Can you check whether the lighting appears that way from all angles?