Cinemachine 3 の新機能

Cinemachine の説明は不要でしょう。Unity で最も多くダウンロードされているツールの 1 つである Cinemachine は、コードを使用せずに複雑なリアルタイムのカメラショットを作成するためのツール群で、映画のようなゲーム内シーンやその他のリニア制作に使用できます。
弊社は、この機能の継続的な改善に常に取り組み、また、アップデートのリクエストなどを含むユーザーからの有益なフィードバックを受け取っています。これらすべてが、最新のリリース「Cinemachine 3」の開発につながりました。 Cinemachine 3は最小バージョン2022.3に対応しています。6000.0から正式に採用される。
Cinemachine が買収され、Unity の一部となってから 5 年が経過しました。当初、Cinemachine は既存の Unity フレームワークやプロセスに上手く適合しませんでした。Unity が進化し、現在も続く UI 開発などに注力する中で、Cinemachine は常に最重要事項だったわけではありません。
今回のリリースでは、一歩引いた視点で Cinemachine の実装方法の一部を設計し直しました。Cinemachine 3 のアップデートは、機能アップデートというより、Unity の他の機能との適合性を高めるフォーマット変更となっています。
Cinemachine を使用する全員が、アップグレードを実行する必要があるわけではありません。しかし、Unity Editor 6000.0でプロジェクトを開始する場合、デフォルトでCinemachine 3が搭載されています。
注:Cinemachine 3 へのアップグレードを実行する前に、Cinemachine API を頻繁に使用するカスタムスクリプトがないか確認してください。もしある場合、引き続き古いバージョンを使用した方が良いかもしれません。また、プロジェクトデータを変換するためのツールは提供されていますが、現時点ではコードの移行を自動で行う方法はありません。Unity API アップデーターはすべての API の変更に対応しているわけではないため、手動でのアップグレードが必要になります。
カスタムスクリプトを使用せずに、Cinemachine を「そのまま」使用している場合、アップグレードプロセスは比較的簡単です。
Cinemachine 3 をより分かりやすく、使いやすいものにするため、名称の一部を変更および標準化しました。例えば、Unity には「Virtual Camera(バーチャルカメラ)」という製品があるため、Cinemachine のバーチャルカメラは CinemachineCamera という名称に変更されました。これらの名称変更に関する詳細を知るには、こちらの動画が役に立ちます 。

- 隠れたゲームオブジェクトの削除
- プレハブやプリセットとの互換性の向上
- Unity の標準/慣習との適合性
- API と Unity の一貫性の向上
- よりクリーンかつシンプルな UX
- 簡略化されたワークフロー
- Unity スプラインとのインテグレーション
- カスタマイズの機会の増加
- サンプルシーンの見直し
Cinemachine は、以前は隠れたゲームオブジェクトを使用して実装されており、カメラの位置を制御するなどの動作を保持していました。これにより、オブジェクトの取得、アニメーション化、スクリプトからのアクセスを実現するための複雑な API が必要でした。今回、これがクリーンアップされ、標準化されました。
隠されたゲームオブジェクトが削除されたことで、Cinemachine とプレハブおよびプリセットの互換性が向上しました。
Cinemachineはもともと、メンバー変数の名前に独自の基準を用いて書かれていた。この点については、多くのフィードバックが寄せられていました(弊社も不満に思っていた点でした)。そこで、すべての「m_」インスタンスを削除しました。
プロシージャルコンポーネントが、通常の方法でゲームオブジェクトを追加した標準的な MonoBehaviours に変更されました。これにより、アクセスするために API の呼び出しを実行する必要はなくなりました。
巨大な Inspector が削除されました。現在、UX は新たな Cinemachine のプロシージャルコンポーネント全体に分散されています。多くの設定はオプトイン式であるため、不要な設定により Inspector が乱雑になることはありません。

デフォルトのトラッキングターゲットが 2 つではなく 1 つになり、少ない設定で済むようになりました。また、FreeLook にも徹底的な見直しが行われました。機能が強化され、必要な設定も少なくなりました。さらに、新しい Orbital Follow の挙動を介して、半径スケーリングが標準サポートされるようになりました。
ユーザーインプットを必要とするカメラ設定は、古いインプットシステムと新しいインプットシステムの両方をサポートする別のコンポーネントによって制御されるようになりました。新しい Cinemachine Channel 設定により、画面分割の実装が簡略化され、Unity レイヤーを使用する必要がなくなります。

Cinemachine スプラインの実装は非推奨となり、新しい Unity ネイティブスプラインとのインテグレーションに置き換えられました。
- ClearShot で、カスタマイズされたショットの品質評価が利用可能に
- Spline Dolly と Spline Cart で、カスタム AutoDolly の実装が利用可能に
- FreeLook で、カメラの垂直移動に対するカスタムモディファイアが利用可能に
- カスタム入力軸コントローラーの記述がより簡単に
Cinemachine 3 のすべてのサンプルシーンをゼロから作り直しました。
Cinemachine 3 の詳細を知りたい方は、 Unity YouTube チャンネルに移動し、Unity の社内エキスパートである Gregory Labute から学びましょう。