Rotation for earth bound actor to "look at" moving point in sky

So I have this human player who controls a kite in the sky. The player is attached to the earth at the right location standing up on the surface of the earth, now I want the camera to look at the kite.

I can use the FindLookAtRotation node but this ruins the rotation of the player which was sitting on the earth. Even though it is technically looking at the kite now it’s not aligned to the earth. Super frustrating. Could someone point me in the right direction either Mathematically or with Cesium to achieve something like this?

I have a feeling it would be something to do with Matrix multiplication but I’m using BluePrints and I’m not awesome at Mathematics. If it helps the player will never move in this mode.

When you say “it’s not aligned to the earth”, do you mean that the horizon is not level? The kite is in the center of the view, but the camera is “tilted” so that the horizon is tilted or even upside-down?

If so, one solution is to put the CesiumGeoreference near the player. Then, Unreal’s normal notion of up will really be up, and FindLookAtRotation is likely to work a lot better.


So You’re 100% right, I managed to work out the math to get the rotation to work (although it was spaghetti code) and after this, I tried changing the reference, I’d never done this before and it was a hell of a lot better. If anyone sees this, cautionary tale. Read the Cesium Docs.