Loading 3D models through cesium ion, the movement axis in UE does not fully match the model

The UE version is 5.3.2, using the Cesium for Unreal Samples project (I am not sure about the specific Cesium version)

I refer to the following website for an example( 3D Models – Cesium )Upload the sample office model to cesium ion, and I have set the specific coordinates (longitude, latitude, and height) myself. Create a new cesium 3DFile in UE and obtain the model through cesium ion.

Then I found that in UE, the coordinate axis of the model did not match the model at all (as shown in the figure below), and when I tried to modify the scale of the model, the position of the model also shifted significantly. May I ask how to solve the problem?
123

Hi @zhizhi_wu,

I just want to confirm my understanding. You uploaded a model to Cesium ion and converted it to 3D Tiles, then placed it as a Cesium3DTileset in Unreal. Is that correct?

In Cesium for Unreal, tiles are always loaded relative to the CesiumGeoreference origin. So even if the Cesium3DTileset itself is located at (0, 0, 0), the actual tiles may not load at (0, 0, 0). It depends on the georeference origin.

Here’s an example to show what I mean. This is Melbourne Photogrammetry, which of course is located in Melbourne, Australia. If the CesiumGeoreference origin is in the middle of the city, then the coordinate axes will appear to be in the middle of the tileset:

However, I can always reposition the CesiumGeoreference outside of the city. It won’t move the photogrammetry with me—and it doesn’t make sense to, because that data is geo-located at Melbourne. So, even though the origin has moved, the data will remain at the same place relative to the globe. And because the origin has moved, the coordinate axes will appear farther away from the actual data.

If you need to modify the scale or position of the model, you will have more success doing so in Cesium ion, before loading the tileset in Unreal. But, you could also import the model directly into Unreal, and geo-locate it using a CesiumGlobeAnchor. This will allow you to manipulate the model with the move / rotate / scale tools, while keeping it anchored to the globe.

I hope this explanation helps! Let us know if you have any other questions or concerns.