#UnityのTriggerのコライダと衝突してしまう。
UnityのTriggerのコライダの普通の挙動であれば、衝突することなく中に入れるのが普通の挙動だと思うのですが、思いっきり衝突していて困っています。
具体的にはTriggerの中に入ったらCinema chineのvertual cameraのPriorityを変更するようにしたくて、以下のようなクラスを書いてTriggerのコライダのついたオブジェクトにコンポーネントとしてつけています。
csharp
1using Cinemachine; 2using UnityEngine; 3 4public class SwitchVCamera : MonoBehaviour 5{ 6 [SerializeField] private CinemachineFreeLook main; 7 [SerializeField] private CinemachineVirtualCamera target; 8 9 private int targetPrevPrioity = 0; 10 11 void Start() 12 { 13 targetPrevPrioity = this.target.Priority; 14 } 15 16 void OnTriggerEnter(Collider other) 17 { 18 if (other.tag == "Player") 19 { 20 targetPrevPrioity = target.Priority; 21 target.Priority = main.Priority + 20; 22 } 23 } 24 25 void OnTriggerExit(Collider other) 26 { 27 if (other.tag == "Player") 28 { 29 target.Priority = targetPrevPrioity; 30 Debug.Log("exit!"); 31 } 32 } 33}
OnTriggerEnter,OnTriggerExitの中の処理をコメントアウトすれば普通に衝突せずコライダの中に入れ、また仮想カメラが完全に移動しきったら入れるとかいった挙動でCinemachine側の挙動がよくないのかもしれないといった感じなのですが、それ以上のことがわからないのです。
解決したいところ
上のようなソースでカメラを切り替えつつ、Triggerのコライダとは衝突せず普通に侵入できるようにしたいです。
環境
windows10
Unity2018.1.5f
Cinemachine2.1.10
よろしくお願いします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/24 03:13