We are creating a project with many locations that we have modelled throughout Australia into a unified UE4 project. Each project is contained within their own sublevels in the World Composition structure. We have created it pretty straight forward using the Cesium Georeference and using the Georeference object to control the sublevel streaming.
However, we have hit a pretty big snag:
We have two sites that by themselves don’t pose an issue as we can set their georeferenced location and jump to that location with the FlyToLocation function with the Cesium Pawn.
The issues arise when moving around in world. These two scenes are very close to each other, so the level streaming bounds within the GeoReference object overlap. If we are at Location A, the world is rebased to this location, this is now our origin and the World terrain is correctly transformed. If we move around this location, we begin to overlap the streaming bounds of Location B. When this happens, the world is rebased to Location B including the sublevels of Location A. So now both Location A and Location B are positioned at the new world origin at Location B, but we are also still within the bounds of Location A so the world then will rebase if you move again between the two locations.
This is causing neither location to remain correctly located in the world location and the World Terrain and sublevels sort of ping pongs between the two locations. Because both of these Locations are quite long (45km and 14km) if we set their georeferenced location to be the same it is causing content streaming problems due to out of bounds world position.
In the Cesium examples, all the example datasets are very far apart so the rebasing issue does not happen or there is a dataset within another data set but they are georeferenced at the same coordinates. Is this a known limitation for level streaming using the Cesium Georeference? Should we approach the streaming differently perhaps?