The right way to use the blueprints?

Greetings to all,

I’m currently watching a lot of tutorials and I noticed that almost no one uses the PlayerController class. All of them execute inputs directly in the pawn (character class), is that the right way?

In addition, the camera with spring arm is created directly in the pawn every time. What if I want to change the figure? Wouldn’t it be better for performance reasons to only create 1 camera that operates on a “mobile” basis.

I want to create a local multiplayer with camera switching / pawn switching.

The enhanced input system is used as the input system.

Am I wrong or would the correct approach be as follows?

  1. PlayerController which manages the inputs and the camera
  2. Character pawns which represent the playable characters and are to be controlled by the respective player controllers
  3. The camera can be assigned to different characters

My current problem is that when I create the camera in the player controller, the spring arm is ignored.