案件で、TimelinneとChinemachineを組み合わせたムービーシーンを作成したので、まとめておきます。
(基本的に備忘録なので、文章が汚いと思います…)
- 追記
下記で紹介されているLive Captureというパッケージを使用すれば、iOS端末をシーン上のカメラとリンクすることができます。iOS端末からゲームシーンを撮影することが出来て、そのままTimelineとして保存することができます。リアルタイムにカメラの動きが見れるので、営業やディレクターなどの方ともイメージが湧きやすいかもです。
- Timeline
ゲーム内ムービーなどを作りたい時によく使うもので、3Dモデルのアニメーション制御やポジションなどを1つのタイムライン上でまとめて管理できるものです。
- Chinemachine
カメラの切り替え、カメラワークの実装はこれを使うのが良さそうでした。
以前までは、カメラの切り替えは、ポジションを指定してカメラを移動させて実現してましたが、これを使えばより簡単に実装できました。
まず、カメラオブジェクトにChinemachine Brainコンポーネントを指定します。
空のGameobjectにChinemachine Virtual Cameraコンポーネントを指定します。
このオブジェクトが、ポジション,回転などから画角などまでカメラ情報を持つようになります。
他にもChinemachine Virtual Cameraコンポーネントを持つゲームオブジェクトを作成すれば、複数台カメラを設置できます。
あくまでもカメラ情報のみなので、実際にはChinemachine Brainコンポーネントをアタッチしたカメラオブジェクトを使いまわしてる感じです。
カメラの切り替えには、Priorityプロパティーの数値を変更すれば切り替えることができます。また、Chinemachine BrainのCustom Blendsプロパティーで、カメラを切替時のアニメーションも指定できます。
- Timeline x Chinemachine
Timelineでカメラやキャラクターの移動をさせるとき、タイムライン上でポジション情報を時間ごとに調整しておりました。より視覚的に調整するために、Chinemachine Smooth Pathというのを使うと、一連のパスとしてポジションを指定することができます。
Chinemachine Virtual CmaeraコンポーネントのBodyプロパティーにて、Tracked DollyとChinemachine Smooth Pathコンポーネントをアタッチしているゲームオブジェクトを指定します。あとは、Path PositionをTimeline上で変更してあげるだけです。
カメラ以外のオブジェクトを移動させる場合は、まずChinemachine Dolly Cartをアタッチしたゲームオブジェクトを用意します。このオブジェクトに、移動させたいものを子オブジェクトとしてアタッチします。あとは、PositionをTimeline上で変更してあげるだけです。
- まとめ
今回、キャラクターの移動とカメラワークを同じタイムライン上で実装しました。カメラワークをCinemachineで実装することで、視覚的に位置調整はできましたが、カメラに主人公が映る位置やタイミングなどの細かい調整で、かなり時間がかかりました。よりChinemachineを使いこなせるとそういった調整もしやすいらしいので、いろいろ試したみたいです。
- 追記
よりChinemachineを使いこなせるとそういった調整もしやすいらしいので、いろいろ試したみたいです。
Chinemachine Virtual CameraコンポーネントのLookAtやFollow機能などで、オブジェクトに追従させるカメラを作ることが出来ます。今回作りたかったのが、途中まで