【Unity】Cinemachineの全機能を解説!ありとあらゆるカメラワークを高クオリティに作る方法総まとめ

Cinemachineを使うとありとあらゆるカメラワークを高クオリティに、そして手軽に作ることができます。
この記事ではCinemachineの全機能を各記事へのリンクの形でまとめました。

Cinemachine2.2.9

Cinemachineとは?インストール〜基本的な使い方

Cinemachineはカメラを制御するためのUnityの公式アセットです。 ゲームを作るうえで必要なあらゆるカメラワークを簡単な設定で作成できます。

まずCinemachineのインストール方法から基本的な使い方までは以下の記事にまとめています。

light11.hatenadiary.com

これを読めばCinemachineの使い方がだいたいわかりますので最初に読むことをお勧めします。

また、Virtual Camera同士をブレンドする方法もCinemachineの基礎知識となりますが、
これに関しては少し複雑なので以下の記事にまとめています。

light11.hatenadiary.com

Virtual CameraのBodyをさらに細かく理解する

上の記事で説明しているように、CinemachineではVirtual CameraのBodyとAimを適切に設定することでいろんなカメラワークを実現します。
このうち、以下の記事ではBodyを設定方法ごとに詳しく説明しています。

まず対象を追いかけるようなカメラワークを作るTranposerについての記事を紹介します。

f:id:halya_11:20190623225922g:plain:w500

light11.hatenadiary.com

次にパスに沿ってカメラを動かすカメラワークが作れるTracked Dollyについてです。

f:id:halya_11:20190627180854g:plain:w500

light11.hatenadiary.com

Orbital Transposerを使うとキャラの周囲をぐるっと回るカメラを作れます。

f:id:halya_11:20190627124727g:plain:w500

light11.hatenadiary.com

最後にFraming Tranposerです。
これは2Dゲームでカメラワークを作成する時に使います。

f:id:halya_11:20190629155904g:plain:w500

light11.hatenadiary.com

Virtual CameraのAimをさらに細かく理解する

以下の記事ではVirtual CameraのAimを設定方法ごとに詳しく説明しています。

まず以下の記事では対象を見続けるカメラを作る時に使うComposerについてまとめています。

f:id:halya_11:20190629235223g:plain:w500

light11.hatenadiary.com

複数のオブジェクトが必ず全て映り込むようなカメラワークを作りにはGroup Composerを使います。

f:id:halya_11:20190630015352g:plain:w500

light11.hatenadiary.com

より高度なカメラワークを作るExtensions

Cinemachineにはより高度なカメラワークを作るための拡張機能が備わっています。
この節ではそれらに関する記事をまとめます。

まずCinemachine Colliderを使うと対象が見える位置にカメラを補正してくれます。

f:id:halya_11:20190701234531g:plain:w500

light11.hatenadiary.com

衝撃に応じてカメラをシェイクさせるにはImpulse機能を使います。

f:id:halya_11:20190630235148g:plain:w500

light11.hatenadiary.com

Noise機能を使うと「手ブレ」を表現できます。

f:id:halya_11:20190630200835g:plain:w500

light11.hatenadiary.com

カメラの位置を変えずにFOVを変えることで対象を追いかけているようなカメラワークを作るにはFollow Zoomを使います。

f:id:halya_11:20190701223241g:plain:w500

light11.hatenadiary.com

Cinemachine Confinerを使うとカメラをコライダーの中に閉じ込めることができます。

f:id:halya_11:20190702003554g:plain:w500

light11.hatenadiary.com

Camera Offsetを使うとCinemachineが計算したカメラ位置を上書きできます。

f:id:halya_11:20190707143604g:plain

light11.hatenadiary.com

複数のVirtual Cameraを使って一つのカメラワークを作るManager Camera

Cinemachineには複数のVirtual Cameraをまとめて一つのVirtual Cameraのように振舞わせるManager Cameraという機能があります。
以下の記事はこのManager Cameraについて説明したものです。

まずState Driven Cameraを使うと、AnimatorのStateに応じてカメラが切り替わる仕組みを簡単に実装できます。

f:id:halya_11:20190703001350g:plain:w500

light11.hatenadiary.com

Mixing Cameraを使うと、最大8個のカメラをウェイトを指定して一度にブレンドできます。

f:id:halya_11:20190704233830g:plain:w500

light11.hatenadiary.com

Blend List Cameraを使うと子のカメラを順番に再生するようなカメラを作れます。

f:id:halya_11:20190705002334g:plain:w500

light11.hatenadiary.com

Clear Shotを使うと対象が障害物に隠れた時に、いい感じに映せる別のカメラに切り替えるカメラワークを実装できます。

f:id:halya_11:20190707004204g:plain:w500

light11.hatenadiary.com

また、Cinemachine ColliderのShot Evaluationと組み合わせることで、
カメラの近くに対象が来た時にそのカメラに切り替えるようなカメラワークも実現できます。

f:id:halya_11:20190707021930g:plain

light11.hatenadiary.com

Free Look Cameraを使うとユーザの入力によって対象をあらゆる角度から見回せるようなカメラワークを作れます。

f:id:halya_11:20190706122422g:plain:w500

light11.hatenadiary.com

その他

まずDolly Cartという機能を使うとパス上にキャラクターを走らせることできます。

f:id:halya_11:20190627183333g:plain:w500

light11.hatenadiary.com