「Unity/Cinemachine/基本」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→複数ターゲットを同時にカメラ内に) |
(→複数ターゲットを同時にカメラ内に) |
||
行26: | 行26: | ||
参考:https://light11.hatenadiary.com/entry/2019/07/22/204953 | 参考:https://light11.hatenadiary.com/entry/2019/07/22/204953 | ||
+ | |||
+ | ==複数ターゲットの変更をscriptで== | ||
+ | <pre> | ||
+ | CinemachineTargetGroup targetGroup; | ||
+ | targetGroup.m_Targets = new CinemachineTargetGroup.Target[] | ||
+ | { | ||
+ | new CinemachineTargetGroup.Target | ||
+ | { | ||
+ | target = playControllView.enemyGroup.transform.Find("Enemy" + enemyNum), | ||
+ | weight = 1, | ||
+ | radius = 1, | ||
+ | }, | ||
+ | }; | ||
+ | </pre> | ||
+ | 参考:https://nekojara.city/unity-cinemachine-group-composer | ||
+ | |||
==CinemachineVirtualCameraの別の追加方法== | ==CinemachineVirtualCameraの別の追加方法== | ||
Unityメインメニュー/GameObject/Cinemachine/VirtualCameraを追加すると"CM vcam1"のオブジェクトがヒエラルキーに追加される | Unityメインメニュー/GameObject/Cinemachine/VirtualCameraを追加すると"CM vcam1"のオブジェクトがヒエラルキーに追加される |
2022年9月12日 (月) 16:03時点における版
目次
基本的な使い方
- MainCameraのInspectorから、AddCompornentして、CinemachineBrainを追加する
- 空のGameObjectを作って、Zを-10にして、Inspectorから、AddCompornentして、ChinemachineVirtualCameraを追加する(もしくは、Unityメインメニュー/Cinemachine/CreateVirtualCamera)
- 追っかける3Dオブジェクトを作って(ここではCube)、ChinemachineVirtualCameraのFollowとLookAtへ、それを追加する
- ChinemachineVirtualCameraのAimをComposerにする
こうすれば、3Dオブジェクトにカメラを向けてくれるようになる。
参考:https://ekulabo.com/cinemachine-overview#outline__5
参考:https://light11.hatenadiary.com/entry/2019/07/23/210040
カメラで追跡
- ChinemachineVirtualCameraのBodyを、transposerにすると、3Dオブジェクトを、カメラが、追っかけてくるようになる。
仮想カメラを複数用意してカメラ切り替え
- ChinemachineVirtualCameraのオブジェクトを複数用意
- ChinemachineVirtualCameraのPriorityに、それぞれ別の値を入れる
- 一方の、ChinemachineVirtualCameraを非アクティブにすると、じんわり、切り替わる。
Priorityの大きいほうが、稼働カメラとなる。
複数ターゲットを同時にカメラ内に
- 新しいGameObjectを作り、"TargetGroup"とし、CinemachineTargetGroupを追加し、3Dのターゲットを追加
- CinemachineVirtualCameraのLookAtに、TargetGroupオブジェクトを、追加する
- CinemachineVirtualCameraのFollowはnoneにしておく。
参考:https://light11.hatenadiary.com/entry/2019/07/22/204953
複数ターゲットの変更をscriptで
CinemachineTargetGroup targetGroup; targetGroup.m_Targets = new CinemachineTargetGroup.Target[] { new CinemachineTargetGroup.Target { target = playControllView.enemyGroup.transform.Find("Enemy" + enemyNum), weight = 1, radius = 1, }, };
参考:https://nekojara.city/unity-cinemachine-group-composer
CinemachineVirtualCameraの別の追加方法
Unityメインメニュー/GameObject/Cinemachine/VirtualCameraを追加すると"CM vcam1"のオブジェクトがヒエラルキーに追加される