Pawn with movable eyes to track player skeleton

Hi all, I know there are a lot of newbie questions here and I thought I would add to the mix! My long-term goal is to have a very very simple game, using oculus and priovr. As the human player, I want to stand in front of a non-human player, move my hand around using priovr, and have the non-human player stand still and just follow my hand with his/her eyes.

I’m just starting to experiment with the non-human actor, and I think what I need is a pawn with a scene component, static mesh, two child scene components for each eye, each with a mesh. The constructor for my Pawn class currently looks like this:

SceneComponent = PCIP.CreateDefaultSubobject<USceneComponent>(this, TEXT("SceneComp"));
	RootComponent = SceneComponent;
	RootComponent->Mobility = EComponentMobility::Static;

	PawnMeshComponent = PCIP.CreateDefaultSubobject<UStaticMeshComponent>(this, TEXT("PawnMeshComp"));
	PawnMeshComponent->AttachParent = RootComponent;

	LeftEye = PCIP.CreateDefaultSubobject<USceneComponent>(this, TEXT("LeftEye"));
	RightEye = PCIP.CreateDefaultSubobject<USceneComponent>(this, TEXT("RightEye"));

	LeftEye->AttachParent = RootComponent;
	RightEye->AttachParent = RootComponent;

	LeftEyeMeshComponent = PCIP.CreateDefaultSubobject<UStaticMeshComponent>(this, TEXT("LeftEyeMeshComp"));
	RightEyeMeshComponent = PCIP.CreateDefaultSubobject<UStaticMeshComponent>(this, TEXT("RightEyeMeshComp"));

	LeftEyeMeshComponent->AttachParent = LeftEye;
	RightEyeMeshComponent->AttachParent = RightEye;

I’m still trying to understand how much I should do in C++ and how much I should do in blueprints, but at this point, I can create a new blueprint in the editor and assign meshes to my mesh components.

Since I don’t have a priovr (because they’re not released yet), I now want the eyes just to track my character’s head as I move around. I’m assuming I just need to update the RelativeRotation of each Eye scene during each tick, but I don’t know how to obtain the world position of my character’s head.

Also, I’m not even sure if OnTick is the best way to handle it. I think eventually I need to define a game mode that the human character initiates to have the eyes begin to track, but that makes me think there could be some other sort of simply interaction the player could have with the pawn to initiate that behavior instead of a full-blown game mode change.

Any advice on how to get the character’s location and apply the rotation to the eye’s would be greatly appreciated!

Stumbled upon this similar question and the provided answer seems to fit the bill:

So to make this even easier, turns out you can just use “Find Look at Rotation” in blueprints. You just feed in the 2 vectors and it spits out the rotator between the two. So easy!