Updated: Dec 15, 2020
Camera control and camera angles are a big part of the experiance in Find Me.
The player controls the camera to view little pockets world from any angle they want.
But very often the game have to seamlessly take over the control and blend in to a staic angle or an animated camera in order to tell the story in more detail.
Here follow some issues I discovered early on and how I have chosen to solve them:
1. Blend from one camera angle to another.
2. Player seamlessly loose and gain interactive control over camera.
I needed my camera to handle a few basic features,
and so I started by creating a hierarchy structure un Unity3D that could handle the following;
Translating in X, Y, Z,
rotating around the center of the scene, in X, Y,
look at a point,
Early on I realised that I will be needing 3 types of camera behaviours.
One camera to be controlled by the player, another to drive from a static angle or animation, and then a third camera that can blend between the two. I created 3 camera rigs that have an identical hierarchy structure but different uses.
is being controlled by the player. It's restricted to Rotating in X and Y and zooming.
The Player Camera can be locked and prevent player from control.
has two soul purpuses. It's either static or it drives from an animation clip.
The animation camera can use all of the rigs abillities.
Render Camera has an driver input that takes any type of Camera Rig, the render Camera will drive from the input.
It also has a method called BlendBetween, that takes 3 arguments.
(cameraRigA, cameraRigB, duration). Once this method is called, the Rig Camera stops driving from it's input, blends between cameraRigA and cameraRigB for the duration specified. Once the blend is completed, cameraRigB will be connected to the driver input and the Rig Camera is once again controlled.
Now I'm able to blend between any kind of camera angle. The player can interact with the camera and explore the scene. And once the player trigger an event I can smoothly blend over specified time to a fixed or animated camera angle for a more cinematic experience.