Cesium Origin Shift with CesiumVRPawn and VR hands dissappear on origin shift

Hi, I am using Unreal Engine 5.5.4 with latest Cesium plugin as of 31/07/25. I have origin shift and cesium anchor components in the VRPawn to stop scene jitter after travelling larged distances across the Google 3d photorealistic tileset. This works well apart from what appears to happen on the origin shift set to change every 10000 unreal units the VR hands dissappear. These are meshes in the VR Pawn off the root component and although the Pawn has a cesium anchor it looks like the hands which hang of the root Pawn collision component do not move with the pawn pawn on the origin shift. Anyone heard of this or have a fix, circumvention etc… Thanks

Hi @yazzap,

I don’t have any first-hand experience with this, but I can think of one thing to check: is the hands component configured to have a World position instead of a Relative one?

If so, the globe anchor’s position change won’t affect it. I’m not sure if the solution will be as simple as flipping it to Relative (it might have other side effects), but it’s worth a try.

Thanks . The hand components are already relative. One observation is that while my CesiumVRPawn walks long distance across the planet everything is fine. It inherits from dynamic pawn and has origin and anchor components as a result. I then enter my CesiumBPShip via attach to component and now seated in the cockpit and hands are ok. It’s when I now travel long distance the hands disappear. If I land and exit the ship via detach actor from component the hands come back. So as a circumvention I was going to try detecting the hands separation and then do a detach and reattach to reset the hands. Any other suggestions though welcome :+1:

Tried all sorts of stuff to try and re create the hands back in the right place after the Cesium Origin Shift but cannot work around this. Will keep trying. Could you take a look at your Cesium Origin Shift / anchor code…. Is there a reason why VR hands should be disconnected on the origin shift. The VRPawn itself is fine but any meshes I attach off the root collision component of the PAWN just dissappear on an origin shift , including the default VR Hand meshes….. Should not the origin shift and anchor components I’ve added to the pawn take care of keeping all the Pawn meshes together ?

Should not the origin shift and anchor components I’ve added to the pawn take care of keeping all the Pawn meshes together ?

Well… unfortunately, no. CesiumGlobeAnchorComponent moves the Pawn (or perhaps more precisely, the Pawn’s root component). The Pawn itself needs to make sure its parts stay together when moved.

Here’s the function that actually moves the pawn:

So I’m not sure where the hands might be going wrong. Are the VR hands a component included with Unreal Engine? If so, can you point me to the actual class name?

Thanks for this. I narrowed the problem down. the VR hands dissappear when the VRPawn actor enters my BPShip actor. i.e. when it attached to component so that the pawn effectively enters the space ship cockpit and so then travels with the ship with the ship controls as opposed to the pawn controls. All part of unteal engine implemented in blueprints. To fix this instead of the pawn travelling with the ship via the “attach actor to component” node i.e. attaching the Pawn to the Ship , I instead enter the ship cockpit by ensuring the pawn world position is updated to match an anchor point on the cockpit. This way the pawn stays as a “standalone” pawn and so the cesim anchor works and keeps the hands in place etc….. So it appears that the anchor function is not working when the pawn attached to another actor. If you need anything further to help with debug your end happy to send it over …..the hands are just static meshes haning off motion controllers components which hang off the root colllision component of the VRPawn…..The Pawn has a cesium anchor component as well as origin shift component.

Ignore last update , seems the problem fixed some how , not sure how , will update if I find out but hands not dissappearing now with attach actor to component etc…… appologies for confusion….If I find the fix I’ll upate here…..maybe because I had origin shift in the pawn and the ship and removed from the ship and seems OK i.e. I had two origin shift components ….. will test when get a minute if that was the case