よりみちアプリ開発

Unityゲームアプリ開発、猫、映画、ゲーム、日々🍀

『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で、ランダムに移動させたい地点の座標を指定。

 

基本的にはこれだけです!
細かい設定や他にもできることもあるのですが、また追記していきたいと思います(^^)