NavMesh設定補助ツール「かんたんNavMesh」
- ダウンロード商品¥ 0

かんたんNavMesh / EasyNavMesh ━━━━━━━━━━━━━━━━━━ UnityでのNavMesh設定を少し分かりやすくするためのEditor拡張ツールです。 NavMeshでNPCを歩かせたいワールド向けに制作しました。 NavMeshはそのままワールド全体をBakeすると、家具や階段、細い通路などの影響で「歩いてほしい場所が消える」「階段がつながらない」といったことがあります。 かんたんNavMeshでは、NPCに歩いてほしい場所だけをシンプルな専用Geometryとして作り、それを使ってNavMeshを生成できます。 ━━━━━━━━━━━━━━━━━━ 【主な機能】 Walkable Area 床、廊下、上階など、NPCに歩いてほしい場所を指定できます。 選択したオブジェクトから簡単に生成できます。 Ramp 階段や段差をNPCが移動するためのスロープを生成します。 STARTとENDをScene上に配置して、階段に合わせたRampを簡単に作成できます。 家具用Block テーブルやソファなど、NPCに避けてほしい場所を小さめにBlockします。 家具全体を大きく塞がず、通れる場所をできるだけ残すことを重視しています。 壁・大型物用Full Block 壁や大型家具など、確実に通ってほしくない場所に使用します。 専用GeometryからBake 元ワールドの複雑なMeshを直接Bakeせず、ツールで作成したシンプルなGeometryのみからNavMeshを生成します。 ━━━━━━━━━━━━━━━━━━ 【使い方】 Unity上部メニューのToolsからかんたんNavMeshのメニューを開きます。 ① ACS標準Bake設定を適用 最初に標準設定を適用します。 狭い通路などをできるだけ残し、NPCが移動しやすいNavMeshを生成するための設定です。 ② Walkable Areaを作成 NPCを歩かせたい床をSceneまたはHierarchyで選択し、 **「選択物からWalkable Areaを作成」**を押します。 その場所に青いフレームが表示されれば、Walkable Areaとして設定されています。 NPCを歩かせたい全ての床に同様の設定を行ってください。 ③ 階段や段差にRampを作成 階段や段差がある場合はRampを作ります。 **「Scene上をクリックしてSTART配置」**を押し、Scene上で階段の下側をクリックしてSTART地点を配置してください。 次に**「Scene上をクリックしてEND配置」**を押し、階段の上側をクリックしてEND地点を配置します。 STARTとENDは配置後も選択して位置を微調整できます。 Ramp幅を変更すると、実際に生成されるRampの大きさが黄色いフレームでプレビュー表示されます。 階段の幅や接続する床に合わせて調整したら、**「Rampを生成」**を押してください。 ④ Blockを設定 壁や家具など、NPCに通り抜けてほしくない場所にBlockを設定します。 家具用Blockは選択物より少し小さめの判定が生成されます。 椅子・テーブル・ソファなど、「中心には入ってほしくないけれど周囲は歩いてほしい」物に向いています。 Full Blockは選択物の大きさを基準にしっかり塞ぎます。 壁や大型家具など、大きな障害物向けです。 すべての家具にBlockを設定する必要はありません。 Blockを増やしすぎるとNPCが通れる経路が減ってしまうため、必要な場所だけに使用することをおすすめします。 ⑤ NavMeshをBake 最後に**「NPC専用GeometryからNavMeshをBake」**を押します。 Bakeが完了するとNavMeshが生成されます。 UnityのGizmosでNavMeshを表示した際に、青く表示されている範囲がNPCの移動可能なエリアです。 ━━━━━━━━━━━━━━━━━━ 【注意事項】 このツールは、複雑なワールドから完全に自動で正しいNavMeshを生成するものではありません。 特に起伏の多いワールドでの使用は想定しておらず、基本的には室内ワールドで使用することを前提としています。 ワールドの構造によっては、Walkable Area・Ramp・Blockの位置やサイズを手動で調整する必要があります。 また、本ツールは多少のめり込みを完全に防ぐことよりも、NPCが移動できる経路をできるだけ残すことを優先した設定になっています。 Bake後は、実際にNPCを動かして問題なく移動できるか確認してください。 ━━━━━━━━━━━━━━━━━━ 【規約】 本商品の再配布を禁止します。 本データの利用により発生したいかなる損害やトラブルについても、当方は一切の責任を負いません。
