【Unity】NavMeshAgentに関する注意点まとめ
どうも、だらはです。
ここでは、NavMeshAgentに関する注意点を備忘録がてらに残そうと思います。
躓いたときにどんどん追記していきます!
NavMeshAgent.SetDestinationとNavMeshAgent.destinationの違い
上記の違いは、戻り値を返すかどうかです。
どちらも目的地を設定することができますが、以下のような使い分けができます。
・目的地の設定が成功したかを知りたい場合:SetDestination
・簡潔に目的地を設定したい場合:destination
bool success = navMeshAgent.SetDestination(navMeshTarget.transform.position);
navMeshAgent.destination = navMeshTarget.transform.position;
NavMeshAgent同士が接触すると意図しない挙動となる。
対策として、NavMeshAgentのQualityをNoneに設定すると改善する。
または、Rigidbodyをアタッチしない。
コライダーをアタッチしてもAgentがコライダー内に侵入することがある。
◆追跡中に壁などのコライダーに侵入する場合
NavMeshSurfaceのBake領域について設定ミスの可能性があります。
壁の中が移動可能になっていないか確認してください。
◆追跡対象のコライダーに侵入する場合
Stopping Distanceを見直してください。
ディスカッション
コメント一覧
まだ、コメントがありません