名古屋でアプリ・VR開発を行っています
ワクワクできるゲームをガンガン開発リリース中!

【Unity】Cinemachine Dolly Cartでオブジェクトを動かそう!

皆さん、こんにちは!SAT-BOXのカメです。

私の住んでいるところは今年は雪が多く、雪かきで体が痛いです...

冬眠したいところですが、今日も面白いゲームを作るために頑張ります!!

 

さて今回はUnityのカメラ用アセット「Cinemachine」に含まれる「Cinemachine Dolly Cart」について紹介しようと思います。

本来はカメラをレールに沿って動かしてカメラワークを作る為のスクリプトなのですが、単純にオブジェクトを移動させる用途でも使用できます。

レール上を移動させるだけならスクリプティング不要で実装できるので、とてもお手軽です。

 

必要になるスクリプトは「Cinemachine Dolly Cart」と「Cinemachine Path」もしくは「Cinemachine Smooth Path」です。

まずはレールを作成します。適当なオブジェクトを用意して「Cinemachine Path」か「Cinemachine Smooth Path」をアタッチしましょう。

直線のレールや、複雑なレールを作成したい場合は「Cinemachine Path」を使用しましょう。

f:id:sat-box:20220218085621p:plain


環状でループするようなレールを作成する場合は「Cinemachine Smooth Path」を使用すると良いです。

f:id:sat-box:20220218085649p:plain


レールが用意出来たら、動かしたいオブジェクトに「Cinemachine Dolly Cart」をアタッチしましょう。

f:id:sat-box:20220218085710p:plain

 

「Cinemachine Dolly Cart」の"Path"に作成した「Cinemachine Path」か「Cinemachine Smooth Path」をアタッチします。
これで"Position"の数値を変更するとレール上を移動するようになりました。
"Speed"に値を入れてあげると、シーン再生中に自動で移動するようになっています。

これだけでオブジェクトの自動移動が出来てしまいました!簡単ですね!
背景の賑やかしに使うのはモチロン、別のスクリプトから制御してあげれば複雑な動作にも対応出来るので様々な用途に使えます。

ちなみに「Cinemachine Dolly Cart」はパス方向に自動で角度を傾けるので、常に一定方向を向き続けたい場合などは「Cinemachine Dolly Cart」の代わりになるスクリプトを用意する必要があります。

 

皆さんもぜひ活用してみて下さい!

以上、カメでした。