シンプルなアクションゲームを作ってみよう23-Cinemachineを使ってカメラを操作する-

記事内に広告が含まれています。

シンプルなアクションゲームを作ってみようの第23回です。

今回はCinemachineを使ってカメラを操作し、キャラクターを追従するようにします。

前回は入力システムをInput Systemに変更しました。

シンプルなアクションゲームを作ってみよう22-Input Systemに対応する-
シンプルなアクションゲームで新しい入力システムであるInput Systemに対応していきます。

シンプルなアクションゲームを作ってみようの他の記事は

シンプルなアクションゲームを作ってみよう

シンプルなアクションゲームを作るのを通してUnityの使い方を学ぶカテゴリです。

から参照出来ます。

スポンサーリンク

Cinemachineとは

Cinemachineはカメラを操作する為の機能で、自前のスクリプトでカメラを操作する場合は壁に遮られてプレイヤーキャラクターを写せなかった時に自分で処理を追加してプレイヤーキャラクターが確実に映るようにしなければいけませんが、Cinemachineを使うと色々なカメラ操作を比較的簡単に使えるようになります。

ただ今回は単純にプレイヤーキャラクターを写し続けるだけで、スタンダードアセットのFollowTargetスクリプトと何ら変わっていないようにみえますが、今後カメラに複雑な操作をさせたくなった時に、こういう機能があるということがわかっていると後々楽になるかもしれないので、あえて今回使用することにしました。

Cinemachineをインストールする

まずはCinemachineパッケージをインストールします。

UnityメニューのWindowからPakcage Managerを選択します。

パッケージの種類をUnity Registryにし、Cinemachineを選択してInstallボタンを押します。

Cinemachineをインストールする

仮想カメラを追加する

CinemachineはVirtual Camera(仮想カメラ)というゲームオブジェクトを使ってシーンに設置してあるカメラを操作します。

デフォルトではMain Cameraがゲームを映すカメラとなっており、Virtual Cameraを作成すると、このゲームオブジェクトの設定によってMain Cameraが操作されます。

説明だと分かり辛いので実際に仮想カメラを作成してみます。

UnityメニューのCinemachineからCreate Virtual Cameraを選択し、仮想カメラを作成します。

仮想カメラを作成する

ヒエラルキーにはCM vcam1という名前の仮想カメラが作成されます。

CM vcam1という仮想カメラが作成された

仮想カメラを作るとMain Cameraゲームオブジェクトのインスペクタを見るとCinemachineBrainというコンポーネントが自動で追加されているのを確認出来ます。

Main CameraにCinemachineBrainコンポーネントが自動で追加された

Main CameraはCinemachineで操作するので、FollowTargetコンポーネントの横のチェックを外し、無効化しておきます。

Cinemachinを使うのでFollow Targetを無効にする

ヒエラルキーのCM vcam1ゲームオブジェクトを選択し、インスペクタでプレイヤーキャラクターを追従する設定をしていきます。

CM vcam1の設定をする

FollowにPlayerゲームオブジェクトをドラッグ&ドロップして追いかけるようにします。

Look AtにもPlayerゲームオブジェクトをドラッグ&ドロップし、カメラがPlayerを見るようにします。

BodyのBinding ModeはWorld Spaceにし、ダンピング(カメラの応答性)に使用する座標をワールド軸とします。

Follow OffsetはFollowに設定したゲームオブジェクトからのオフセット値を設定します。

XYZのDampingは0だと即座にこのオフセット値を維持し、数値が大きくなると遅れてカメラがターゲットを追従します。

AimはDo nothingにし、カメラの回転は行わないようにします。

実行して確認してみる

機能が出来たので実行して確認してみましょう。

上のようになりました。

Follow Targetスクリプトと同じように動いていますね。

終わりに

今回はCinemachineを使ってカメラを操作しました。

次回はゲームスタート前にカウントダウン表示をする機能を作成していきます。

タイトルとURLをコピーしました