I have need to load cesium3dtiles at few location that are not in camera view. How to load tiles at this locations?
Hi @Aankit_K,
You can use CesiumCameraManager to allow multiple views of your scene. These don’t have to be actual cameras – they can be frustum parameters that simulate cameras to view those far away 3D Tilesets.
Let us know if that works for you!
I have followed the steps but it freezes my machine when I press the play button. Can you suggest any optimisations.
Is cesium3dtiles actor designed to load terrain and imagery of two different locations in different windows? What am I missing here?
I have fairly good hardware so that is not an issue I guess. ![]()
Hi, Aankit_K,
I have the similar situation for the AirSim BP_PIPCameras to render 3D Tiles. The solution of harrison in the last post in the thread( Multiple Simultaneous Camera Rendering - #2 by Kevin_Ring) works fine. There are just a few details need to pay attention to.
-
Make sure the references of the cameras are valid before calling the AddCamera of Camera Manager.
I created a Blueprint Actor Class named BP_updateCamera, and ensured this by adding a Delay node long enough on the Event Beginplay before getting the references of the spawned BP_PIPCameras.
-
If there are multiple cameras, say their references are stored in an array, the correspondence between the array index and the CameraID returned while adding camera is important. Because the correspondence should be maintained while updating cameras’ Location, Rotation, FoV in Event Tick.
-
Make sure BP_updateCamera is in the Outliner.
Hi, I actually did such things as you described above. My target is to use another camera which will load 3d tiles from far away (for example, fov = 4.5) because when I zoom the BP_PIPCamera to this value, it takes time to load 3d tiles. I want to load tiles from the fov = 4.5 one first and then when I zoom the current view camera, it will no need to load 3d tiles again. Will this possible?
Hi, Hung_Vi_t,
I don’t think you need to use another camera, just to switch FOV.
Check this: https://microsoft.github.io/AirSim/image_apis/#camera-apis
“simSetCameraFov allows changing the Field-of-View of the camera at runtime.”
“To change resolution, FOV etc, you can use settings.json.”
Hi pjiang9,
Thanks for your quickly replying. Sorry for my bad English.
I mean the 3d tiles loading speed of the Cesium Unreal is quite slow when I change the field of view of the camera at runtime. I have to wait for few seconds. I want 3d tiles immediately be there at the time I changing the field of view of the camera. I’ve modified parameters such as Maximum Screen Space Error, Maximum Cached Bytes,…. However, these didn’t satisfy my target. So I want to ask if I can use 2 camera (1 for default FOV and other for x20 times FOV for example) but the view target is the default one. The x20 one use for loading 3d tiles that are far aways. Noted that I’m using Google Photorealistic 3D tiles.
Hi, Hung_Vi_t,
I might understand what you mean now. You can try this. Taking a CameraActor as an example, this CameraActor has already been registered in the CesiumCameraManager and it uses the FoV you want.
1. Set the Player’s view to the view of the CameraActor when necessary.
2. Restore the Player’s View to the Pawn’s View when necessary.
You can try changing the “Blend Time” to see the effect.






