Is it better to use a custom camera controller for a complex camera system or leave everything under the player blueprint. Only real benefit I see is organization and keeping clutter to minimum in player blueprint. I have several different camera systems working together and they take up quite a bit of space in the player blueprint. Would that affect performance at all?
Default CameraMenager is designed so it has selected view target (using SetViewTarget) which is actor and call and call CalcCamera
to that actor on every frame asking about camera positioning, how actor supposedly be presented (but it does not need to present actor at all, it your pick). Default CalcCamera code searches for camera component and use it’s camera position, but you can override function and change that behavior, you can make camera working without need for camera component. So if you just changeing camera changing position (Reagardless if it camera component moving or overriding of CalcCamera) and use view targets to focus on diffrent actors the standard camera menager is ok, but if you want to change this convention you should edit camera menager, i don’t know how your system work so i’m can’t jurge where you should place it. But at the end it’s just a “convention” for organization, if your code work and you feel compatibly it should be ok, but you there risk you might hit some problems later on since UE4 code expect you to follow the conventions. As for performance there should not be a issue, but you need to remember that blueprint is slower then C++, but again i don’t know how you system work so i’m not sure how far this effect it.