Modify the LOD of tiles?

Hi, i just wanted to know if that’s possible to increase the loading speed of tiles or maybe to preload them cause i want a good resolution without zooming a lot.

At this level of zoom, i have this detail :
But i would like to have this level of detail :

Is that even possible or not ?

Decrease the Maximum Screen Space Error property. If you want the geometry to be higher resolution, too, change the property on the Cesium3DTileset component. For example, try changing it from 16 to 8. If the geometry is accurate enough but you want higher resolution textures, changing the Maximum Screen Space Error property on the CesiumIonRasterOverlay component instead. Try changing it from 2 to 1.

Ok will try that, does the scale of the globe will impact this ? because i had to reduce the size from 1 to 0.00005 in order to fit with my project.

It should work fine I believe, but of course let me know if you see otherwise.

How to adjust the lod accuracy in the visual range of vr to the highest accuracy (within 20m or other limits)? According to your answer, only at five to six meters will the lod display clearer and cause significant loading delay when rotating the view

Looking for the same adjustement too …

@chiqiangzhe there’s no way to do exactly what you’re describing.

Based on the numbers in your screenshot, your tileset seems to have some severe issues. 20285 batches implies that many thousands of tiles are being rendered. It makes no sense to have that many tiles visible in a view, especially if your screen size shown (857x426) is accurate. So most likely the tileset’s bounding volume hierarchy was created very poorly.

This is not tileset’s problem. It is caused by a 200M model, which is not seen in the display area. Only the ties data batches are in the 600-900 range, your answer means that tileset precision can’t be improved within the VR viewable range (0-20m)?
Now the best accuracy can be obtained is about half a meter away from me, so I can modify the tieset source files to solve this problem?

600-900 is still a massive number of tiles for a 857x426 display.

There is currently no way to adjust LOD only within a certain range. It probably wouldn’t help as much as you think, anyway, as the selection algorithm already works in such a way as the vast majority of tiles are close to the viewer. In the distance there are only a small number of large tiles.

hi@ Kevin_Ring
In the scene window, I found that the camera does not remove occlusion for tileset, and the tile in the camera perspective but completely behind other models cannot be set in unity due to the dynamic addition of tile. How can we use the mechanism of removing occlusion to further optimize?
Indeed, as shown in the image, when the view is moved to an Angle where tiles are abundant (including the blocked mesh), the feeling of stalling increases significantly。

Thanks for your answer, I’ll keep testing for baches, which could be a problem with the data itself.

We’ve implemented occlusion culling in Cesium for Unreal, but haven’t yet looked into what it would take to do it in Unity.

occlusion culling in Cesium for Unity can greatly optimize resources, hope to achieve this function as soon as possible。
Look forward to Cesium Team’s implementation of the relevant functionality。

Yep, for areas with high depth complexity, like dense cities, it can help a lot. If you’re familiar with Unity’s occlusion culling capabilities and would like to give it a try, the task pretty much boils down to implementing cesium-native’s TileOcclusionRendererProxyPool class in Unity:

You can find the Unreal implementation of it here:


Is that possible to preload all the tiles in unity ? In order to have the best resolution without zooming ?

If you set the Maximum Screen Space Error value to a very small value (but keep it above zero), it will have that effect. But more likely your application will run out of memory and crash, because “all the tiles” is far too many to fit in memory for all but the smallest tilesets.

Ok, thanks for the tips.