2022-07-22
Unityで迷路を突破してみよう

こんにちは。プログラマーのIです。
今回はUnityの「Navigation」機能を使って
キャラクターを目的地まで簡単に移動させる方法を紹介したいと思います。

簡単な迷路を用意しました。
緑色のキャラクターを黄色い目的地まで移動させることが
今回の目標です。


① まず、Window -> AI -> Navigation を選択します。
すると、「Navigation」という新しいウィンドウが表示されます。

② Hierachyから地形を選択し、
NavigationウィンドウのObjectタブにある
「Navigation Static」にチェックを入れます。


③ BakeタブからBakeを押します。
今回は簡単な地形のため基本設定で大丈夫です。
これでAIが認識可能な地形として設定されることになります。


④ キャラクターを選択し、Add Component -> Navigation -> Nav Mesh Agent を選択します。
これで道探しAIが搭載されたキャラクターになりました。

⑤ キャラクターに目的地を入力するコンポネントを作成します。

⑥ キャラクターに⑤で作成したコンポネントを追加し、
目的地のターゲットを入れます。
これで完成です!
キャラクターがうまく道を探して
目的地まで移動することが確認できます。
もちろん、もっと複雑な迷路も
簡単に突破できます!
以上、Unityの「Navigation」についての話でした。
主人公キャラクターを目的地をタッチして移動させる際や、
敵キャラクターが主人公に向かって移動する際など
色々役に立つ機能ですので、活用しましょう!