個人的勉強メモ置き場

プログラミングど素人のメモ置き場

Cinemachineを使ってカメラを自動追尾させる

プレイヤーをいい感じに映すカメラを使いたい

プレイヤーを映すだけなら通常のカメラにプレイヤーの位置を与えてあげるだけで簡単。
しかし凝ろうとするとなかなか面倒くさい…そんなときにCinemachineを使うと楽をできるかも

Chinemachineの導入

パッケージマネージャー → プロジェクト内部から選択

f:id:zykb:20210114131238p:plain

今回は2Dゲームに使用するので2DCameraを使います
インストールし終えたらゲームオブジェクト → Chinemachine → 2DCameraを選択

f:id:zykb:20210114131623p:plain

するとMainCameraにChinemachinBrainコンポーネント、子にChinemaChinePipeline。新しくChinemachineVirtualCameraコンポーネントを持ったオブジェクトがヒエラルキーに追加されます

f:id:zykb:20210114132006p:plain

今回はサクッと追尾させるだけなのでChinemachineVirtualCameraコンポーネントのTargetにプレイヤーのTransformを与えます

f:id:zykb:20210114132421p:plain

このままだとプレイヤーがど真ん中に表示されてしまうのでオフセットを変更します。VirtualCameraのBodyからTracked Object OffsetのX,Yを4,2としてカメラを右にずらします

f:id:zykb:20210114132924p:plain

動かしてみる

これで基本的な設定は終わりです。動かしてみます

f:id:zykb:20210114133445g:plain

これだけでもなかなかいい感じに追尾できています。設定で追尾速度や視野角など細かく調整できるのでぜひ試してみてください。
ちなみに画面のガイドはVirtualCameraのGame Window Guidesのチェックをオフにすると消せます