Controlling the camera controlled by CalcCamera by default, and accessing it

Hello ya’ll!

Basically, I have a PlayerController and multiple pawns that I want to be able to switch between, while keeping the same camera. I have achieved this by using overriding the CameraCalc function in my PlayerController class.

ReptilePlayerController.cpp

 void AReptilePlayerController::CalcCamera(float DeltaTime, struct FMinimalViewInfo& OutResult)
 {
     OutResult.Location = GetPawn()->GetActorLocation() + FVector(0, 100, 0);
     OutResult.Rotation = FRotator(0, 0, 0);
 }

This gives me a camera that follows my pawn around and is placed 100 units from it, which is already great. However, I am unable to change the pitch and yaw of this camera. To be precise, I want to use mouse input to rotate the camera around the pawn. I imagine I’ll need a springarm to do this, but I’m not sure how to attach this camera to a springarm if I can’t even find it in the code.

Also, I’d like to eventually use the rotation of the camera in a function in the pawn’s class.