『PolyNav2D』Unity2DでNavMeshっぽいことができるアセット使い方説明
・クリックした地点にキャラを移動させたい
・あらかじめ決めたルートを行ったり来たりさせたい
Unity2Dでこれらのことがしたいな〜と思ったのですが、
こちらのNavMeshを使った「ナビゲーションと経路探索」の機能は3Dのみとのこと😭
docs.unity3d.com
がっかりしていたところに、正に2Dで上記のことができる『PolyNav2D』というアセットを見つけました。
assetstore.unity.com
すごく便利で実装も簡単に作ってくれており、ReadMeとサンプルでほぼわかるのですが、
英語で毎回読み返すのが面倒なので、備忘録がてら使い方を書いておこうと思います😃
①キャラが動ける範囲のマップを作る
ツール/ParadoxNotion/Poly Nav/Create Poly Nav Map
で、@PlyNav2Dというオブジェクトが作られます。
「コライダーの編集」で、動かしたい範囲を囲うように整形します。
②動かしたいキャラクターを設定する
動かしたいキャラのオブジェクトに、PolyNavAgentというコンポーネントをつけます。
・マップ:①で生成された@PlyNav2D。なしの場合、シーン内で最初に見つかったマップが適用されるとのこと。
目的によって、アセットのDEMOにあるスクリプトをつけます。
・キャラをクリックした地点に移動させたい→ClickToMove
・決められたルートを移動させたい→PatrolWaypoints
W pointsで、移動させたい地点の座標を指定。
・決められた地点をランダムに移動させたい→PatrolRandomWaypoints
同じくW pointsで、ランダムに移動させたい地点の座標を指定。
基本的にはこれだけです!
細かい設定や他にもできることもあるのですが、また追記していきたいと思います(^^)