One camera or many?

Ultimately I’m trying to figure out: should I have a camera on each unit or a singular camera that’s outside of them?

I know this is a more nebulous question and people tend to hate them here but I’m unsure about how to proceed.

Context: Building the basis for an RTS/CRPG system where the player has a number of units they can take control of and give commands to individually at any given time. If this were Unity, I would just have one camera, one script tied to that camera and have the logic for how that camera’s controls operate tied to the general game controller. Unreal just doesn’t seem to like being that straight forward and that’s where I’m kind of stuck.

Cameras seem to always be tied to characters in Unreal. So while my background and gut think “Oh, one camera should be fine”, I’ve gotten enough experience with Unreal to question if maybe I shouldn’t just throw a camera on every player unit and swap/reset them as someone swaps between units.

I understand it’s probably possible to do it either way, just looking for other perspectives on the subject to better inform my decision.

Many ways to do it. Not sure any is “more correct”.

We have apps with multiple controllable characters and make the camera the “character” and move it around to spec different objects. The camera is an invisible character that flies, collides, and can attach to different units.

I dont think unreal has any issues arising if you want to use camera manager class or your own custom class as a camera manager, and tell the camera what actor to lock onto, what distance, follow lag, etc.

This is how camera is handled in the popular third person template “advanced locomotion”, and also how I’ve handled camera in all of my games (first and third person action games)

you might have a data table that describes camera settings per unit, like spring arm follow distance, angle, etc and when you swap units, just update camera settings from that data. Then you only ever have one camera (and supporting components like spring arm) and the only thing that changes is just some parameters for it when changing units. I think that would be the most efficient method both as far as computer and the human managing the system are concerned.

I have no idea if having a thousand units each with a camera is additional overhead that matters, but I imagine if you are spawning / destroying many units, there must be some difference if they come with a camera component or not. But to see if it makes any difference just have to test A versus B.