How can I make the vr origin follow the camera?

I changed the default blueprint to allow rotating your character with the right thumbstick rather than using the teleporter.
However, I’m having an issue where moving away from the vr origin messes with the rotation. Instead of rotating in place, you end up rotating around the vr origin, which stays stationary.

The VR origin represents the tracking space origin, and it needs to be offset from the camera to get positional tracking.

Instead, you can calculate the camera offset from the rotation, and subtract that from the actor position when rotating. If you look the GetTeleportDestination function in BP_MotionController, it subtracts the offset from the teleport destination. If you replace the teleport cylinder position with the world floor position under the camera, it should output the correct position when rotating in-place.