I’m at a point now where my pawn class gets kinda messy because of me thinking “let’s get it working, we can make it pretty later on” way too often. I think that ‘later’ I referred to back then is now: It’s refactoring time.
I already ripped some things out and the code gets better organized but I have no idea where I should put the code for my camera controls.
Let me explain:
Most of the time is spent in a vehicle where the camera cannot be controlled by the player besides looking back. This is currently all I have implemented and as stated above: It’s in the pawn class.
Later in the development process it’s planned to have some occasional cinematic or tracking shots for level introductions or cutscenes and maybe a bit more camera control during gameplay.
So while refactoring the code I wondered how this is done generally. Which class controls which camera is active and where do I put the code to control the camera if needed (in this case looking back while driving a vehicle).
I already found the PlayerCameraManager which according to its name seems like it could solve my problems but I have admittedly no idea how I would implement it. Browsing the Engine code didn’t help with that.
Are there any materials which explains these things or could someone please explain how I should refactor my current setup? I don’t just want to “get it working” in another file, I want to solve it for good with the option to extend it later.
Am I doing something wrong or does everyone get an error if a new thread with tags is submitted?