Resident Evil Inspired Cam System
Goals
• My Primary goal was to Implement a Third Person Camera System which allows for easy exploration of the level.
• Create the System for quick and easy implementation for faster development.
Focus:
Implementing a Suitable Camera System for a Third Person Character.

Date:
March 2024.

Engine:
Unreal Engine 5.

Language:
Unreal Engine Blueprints.
Design Process
Research
During the research part of my Honours Project I knew I wanted to make a small puzzle game to show off my AI Companion Framework and for that to work I would need a Camera System, After some research into games with different Camera System like, Spiderman, Saw, Resident Evil etc.
I knew from the start that the Camera System that I wanted had to work so I could have the camera focus on certain locations, so after playing all the game the one that felt right was Resident Evil which had static cameras placed around the level focusing on certain angles and changed depending where the player is.
After deciding to go with this sort of Camera System I then started on the development.
Resident Evil Camera System.
Resident Evil Camera System.
Saw Camera System.
Saw Camera System.
Spiderman Camera System.
Spiderman Camera System.
Implementation and Testing
Incremental Testing
As this was a mechanic made for a bigger project I knew that the project would require several different mechanics and I knew most if not all of these mechanics would need to have several features to make it work so in order to implement each mechanics to its best self I decided to go with Incremental Testing which requires the developer to split the game mechanic into different features and once each feature was implemented it was to be tested before the next feature was added.
Camera Switching
Since at this point I knew I wanted to replicate the Resident Evil Camera System for my project I went to work by creating a blueprint with a trigger box which checked for the players collision and when it did it switched the players main camera to the selected camera for that trigger box, by implementing it this way it already checked off my goal of making the camera system quick and easy to implement into my level making adding the camera all around the level faster.
After this I gave it a quick test and it all worked the way it was meant to but it just didn't feel right to me when watching gameplay of resident evil the camera system seemed great but after testing it on my project it just didn't feel right.
I wasn't sure if it was just my project or not so I launched up Resident Evil and played for a little bit and even that didn't feel right now me.
The Medium Poster
The Medium Poster
Blueprint for rotating camera to follow player
Blueprint for rotating camera to follow player
Further Research
After this little set back I started researching into other games that had similiar camera systems to Resident Evil and found that "The Medium" used a camera system similiar but changed their so rather than the cameras being static they rotated following the player where they went.
This already seemed much better but before making the same mistake again I found out my roommate at the time owned a copy of the game, so I launched it on my ps5 and played through and it felt so much better.

Following Player
After adding some nodes to get the players actor location and the cameras world location I was able to find the Look at rotation between the two and connect it to the cameras world rotation, I gave it another testing and the camera system felt so much better than when the camera were just static.

Video of Problem with Keyboard to show controls.

PROBLEM!!! - Movement Controls
After getting the camera switching part of the mechanic implemented It was time to test to see if any bugs appeared, At first I never noticed anything but while going further into the level I started to notice the depending on what angle the camera was facing the controls would appear to be messed up.
Now technically the controls didn't mess up themselves but I just never thought about the angle and position of where some camera would be.
I Knew straight away what needed to be done, I would need to somehow change the controls depending on where the camera was in the level.
After some research on how to fix the problem I stumbled upon an Unreal Forum where someone had the same problem, So in order to fix the problem I had to get the current Cameras rotation and connect its Roll and Yaw values to the main characters Roll and Yaw Values.
Another quick test and controls worked perfect as depending on the rotation of the camera would determine on what way the player would move when pressing the controls.
The Final Result
Back to Top