【Unity】ナビゲーションシステム
Unity2022では、NavMeshの作成の方法が変わっています
目次
NavMesh Surfaceの作成
次のように作成することで、NavMeshのコンポーネントがアタッチされたゲームオブジェクトが作成されます
これまでは、Windowメニューから作成していました
Bakeする方法
NavMesh SurfaceゲームオブジェクトのインスペクターからBakeします
エージェントの半径、高さ、登れる傾斜などのカスタマイズは、Agent TypeのHumanoidをプルダウンすることでメニューが選択できるようになっています
Bakeエリアの確認
シーンウィンドウの様子
ナビゲーションのエリアが表示されない場合
オーバーレイメニューから表示メニューを出します
NavMeshAgentに目的地に移動するように指示する
エージェントが移動するポイントでNavMeshAgent.destinationプロパティを設定するだけで、パスの計算を開始するようにエージェントに指示できます。計算が完了するとすぐに、エージェントは目的地に到達するまで自動的にパスに沿って移動します。次のコードは、aGameObjectを使用して、Start関数の宛先プロパティに割り当てられるターゲットポイントをマークする単純なクラスを実装しています。スクリプトは、エディタからNavMeshAgentコンポーネントをすでに追加して設定していることを前提としていることに注意してください。
// MoveDestination.cs
using UnityEngine;
public class MoveDestination : MonoBehaviour
{
public Transform goal;
void Start () {
NavMeshAgent agent = GetComponent<NavMeshAgent>();
agent.destination = goal.position;
}
}
ディスカッション
コメント一覧
まだ、コメントがありません