Originally when I created the Motion Controller, free camera rigs, and the Camera Controller, I assumed that the camera rigs would always follow the character. While this is true most of the time, I’ve come to realize that we don’t always want to lock the camera to the character.
This is especially true when you’re dealing with things like targeting or aiming. Sometimes we want to shift the view without moving the player and sometimes we want to shift the player without moving the view. If you’ve played The Division, they do this all the time.
So, the Camera Anchor is a mediator between the character (Motion Controller) and the camera rig (Camera Controller). By default, it simply follows the player and the camera rig follows the anchor.
However, when we need to, we can disconnect the anchor from the player or offset its position. Since the camera rig follows the anchor we can control the camera as needed.
To use the Camera Anchor, simply add a new GameObject to the scene and add the Base Camera Anchor component.
On the Base Camera Anchor, set the “Root” to be the Transform that the Camera Anchor is going to follow. Typically this is the Motion Controller enabled character.
On the Camera Controller or other ootii camera rig, set the “Anchor” property to be the Base Camera Anchor we just created.