Tileset not loading dynamically

Hello folks!

My Cesium tileset is not loading dynamically based on the camera position; it is always rendered in low poly. It doesn’t matter if I’m just previewing the level inside the editor, playing the level inside the editor, or playing the level in a packaged .apk.

As you can see in the video, the tileset is only streamed at a higher resolution when I explicitly select the Cesium3DTileset actor. If the actor is not selected, no higher-resolution tiles are streamed, no matter how close I get to the surface.

Unfortunately, I don’t see what I did wrong this time while setting up the Cesium level.

Can anyone please help?

Hey @alpac0, welcome to the forum!

I see you have a CesiumCameraManager in the level, which is the actor responsible for telling tilesets which cameras to use for LOD selection. If its settings aren’t right, tiles will stay at base detail regardless of how close the camera is, which matches what you’re seeing.

A few things to try:

  1. Check CesiumCameraManager settings: Select it in the Outliner and verify that Use Editor Cameras and Use Player Cameras are both enabled in the Details panel. If Use Editor Cameras is disabled, that would explain why tiles don’t refine in the editor viewport unless you select the tileset actor.
  2. Check your XR pawn’s Camera Component: For gameplay (PIE and packaged), make sure the camera component on your XR pawn has Auto Activate enabled and that the PlayerController’s view target resolves to it correctly.
  3. Manual camera registration (workaround): If the above two look correct and tiles still don’t refine, you can manually register your camera with the CesiumCameraManager by adding it to the SceneCaptures array or by feeding an AdditionalCameras entry with your camera’s transform and FOV each frame.

Could you also share your Cesium for Unreal version and UE version? And potentially a screenshot of the settings in your Camera Manager if the above doesn’t resolve your issue. That helps narrow things down.

Let me know what you find!

Hi @darcyvdd thank you for your response!

I’m using UE 5.7.4 (built from source) and Cesium 2.26.0.

Use Editor Cameras and Use Player Cameras are both enabled.

The Auto Active is also enabled and the player controller possesses the player pawn correctly.

For the workaround I derived a custom class from CesiumCameraManager and gave it the reference of the camera component of my pawn, but unfortunately this workaround didn’t resolve the issue. (I did reference the custom CesiumCameraManager in Cesium3DTielset actor (CeisumMoon) under “Camera Manager”).

The tileset keeps “flickering”, as you can see in the video. It stops flickering and just stays low resolution when Use Editor Cameras is turned off.

Here you can see the perspective of the pawn camera: Watch pawn_view | Streamable.

Also, i’m not sure if it has anything to do with it, but I’m getting two editor errors on every engine startup:

Found a depricated ini key name in <path/Engine.ini>. Search for [RunningThreadedRequestLimit] and replace with |removed|

and

Found a depricated ini key name in <path/Editor.ini>. Search for [RunningThreadedRequestLimitEditor] and replace with |removed|

Both values are currently set to 100.

I solved it. The issue came from Enable Experimental Occlusion Culling Feature being enabled inside Project Settings.

I disabled it.