I just want to add my two cents to this thread for others who find it because I see a lot of similar threads around, with helpful people gently missing the point of the question.
If you are in any other game engine other then Unreal (unity, godot, etc) there is no concept of the “PlayerController”. A script would just take input and apply changes directly to its attached transform (which controls position, rotation & scale). Also, a camera is simply an object that sits in the world and renders what is in front of it, there is no “camera owner”. All these ideas of “who controls the view” are Unreal specific. For Input, any script that wants to listen to the input can do so, it does not get “captured” and there is no ownership, other then what the programmer adds. I see a lot of posts with Unreal people talking past the question at hand (often trying to be very helpful I should note!) but often missing the point of the question because they are so used to Unreal that they miss things that are confusing to people coming from outside Unreal.
I think the original question is still very valid. There seems to be a distinction made between movement and rotation. For example, with a FloatingPawnMovement component, I can add an input vector, however there doesn’t seem to be rotation controls. Usually (such as in Unity), I would handle the rotation of the object and the movement of the object together, in the same place, but Unreal creates a hard distinction between them, seemingly forcing me to handle the rotation in the PlayerController while allowing the actual movement to be applied to either the Controller or the Pawn itself. It seems to be just accepted as gospel by the Unreal community but it is very confusing if you are not used to the architecture. I can’t seem to find any good reason for this distinction either, other then it is just the way it is done.
What I would like to do would be to handle the rotation at the Pawn level, so that different pawns would, for example, rotate at different rates. Like, if my PC possess a Tank pawn, it should rotate differently then a “human” pawn. Perhaps I am missing something obvious here but this seems like a common use case.
I’m not trying to knock the Unreal community, they are often trying really hard to explain things, just pointing out that it is easy to miss the forest for the trees when working with Unreal, and trying to understand why design decisions were made a particular way. Many of the concepts make sense when you understand them but just be aware this is mostly very specific to UE so confusing to us noobs from outside it.