Tuesday, 31 March 2020

Analysing Cinematography

Who ever has played Silent Hill knows it has quite the impressive camera work to say the least. It's quite challenging replicating this as an amateur / hobby programmer. They use varying styles of cameras from dolly to pedestal to even: truck, pan, tilt and even zoom and more!
So to fully understand and re-create all these I've done a lot of play testing and broke down various stages to see what is used and how.

For example, Alley B (Hell) is quite complex in that it 8+ different cameras throughout this small section. All of which work both directions.

Above you can I've broke it down into sections:

  1. Camera 1:
    This is a simple static camera upon entering the stage, it doesn't move but does zoom in as part of a small animated scene. The first change occurs at the intersection between this cam and Camera 2 A.
  2. Camera 2:
    1. A:
      This camera starts further away from the player, as they move towards the camera it uses a pedestal move to raise over the players head depending on distance.
    2. B:
      Continuing from A when the camera is at its highest it then merges to B, which then follows the player as they move along the X axis.
    3. C:
      Upon reaching the boundary between B & C the same camera is then forced to a single point yet is given more freedom to look at the player as they move around this small squared area.
    4. D:
      Camera 2 then unlocks itself from point C and follows the player along the Z axis until reaching point E.
    5. E:
      Here the camera frozen in place again but is allowed to look at the player as they move towards Camera 3 A.
  3. Camera 3:
    1. A:
      This new camera follows the player along the Z axis akin to Cam 2 D.
    2. B:
      When the player reaches B, a cutscene is activated, after which A is resumed.
      Afterwhich the cameras can now be re-instated in reverse order and even back again.
All of that camera work is just for this one small scene. The heavy lifting is done by one singluar entity: Camera 2. This camera is altered throughout via triggers which fire specific code I made to mimic certain camera styles.

These two code snippets merge the current cameras position and rotation to a specific point and the other allows it to move along with the player respectively.
All these triggers are used for the camera movements detailed above!

This is just one section of the game, the others all use different styles throughout and the same process is used for them. Although this particular area is the hardest.


This video shows all this work put into effect. All assets have been removed so that focus is primarily on camera work!

Also as an added bonus, the video also shows off audio blending. The background music shifts intensity at specific points to cause anxiety the further in the player gets. This area has 4 different music triggers at points: Cam 1, Cam 2 D, Cam 2 E and Cam 3 A just before the cutscene!

No comments:

Post a Comment