詳細設定の Min Region Area で、NavMesh の最小領域を設定することができます。指定した値よりも小さな NavMesh の領域は削除されるようになります。
Min Region Area を設定しているにもかかわらず、一部のエリアで NavMesh が削除されないことがあるので注意してください。NavMesh は、タイルのグリッドのように平行に構築されます。エリアがタイルの境界をまたぐ場合、エリアは削除されません。この理由は、エリアの剪定は、周囲のタイルがアクセスできないビルドプロセスの段階で起こることがあるからです。
マニュアルボクセルサイズは、ベイクプロセスが動作する精度を変更することができます。
NavMesh ベイク処理は、任意のレベルのジオメトリから NavMesh をビルドするためボクセル化を行います。アルゴリズムの最初の段階で、シーンがボクセルにラスタライズされ、歩行可能な面が抽出されます。最終的に、この歩行可能な面が NavMesh になります。ボクセルサイズは、最終的にできる NavMesh がどのくらい正確に作成されるかの指標となります。
エージェントの半径あたり 3 個のボクセルがあるようにデフォルトの精度が設定されています。つまり、全部のエージェントの幅は 6 ボクセルです。これは、精度とベイク速度との間の良好なトレードオフです。ボクセルサイズを半分にすると、メモリ使用量が4倍に増加し、それはシーンをビルドするために4倍長く時間がかかります。
通常、ボクセルサイズを調節する必要はありません。これが必要になる場面は2つあり、エージェントの半径が小さすぎる 時と、さらに精密に NavMesh をビルドする 時です。
人為的にエージェントの半径を小さくしてベイクするとき、NavMesh のベイクシステムは、ボクセルサイズを小さくします。他のエージェントの大きさが同じままであれば、その NavMesh ビルドの解像度を大きくする必要はありません。
ボクセルサイズを変更しない簡単な方法は次のとおりです:
シーン内に細かな部分が多い場合、ボクセルサイズを小さくして精度を向上させる必要が出てきます。Voxel Size の下に表示されているテキストはエージェントの半径に対するボクセルサイズを表しています。調度よいボクセルサイズの範囲は 2–8 です。また、ボクセルサイズを小さくすることでビルド時間は通常よりも長くなります。
意図的に自分のゲームで狭い回廊を構築するとき、特に回廊に坂がある場合は、エージェントの半径に加えて、少なくとも 4 * voxelSize のクリアランスを残す必要があることに注意してください。
NavMesh ベイクがサポートできる範囲よりも小さな回廊が必要な場合、Off-Mesh Links を使うことを検討してください。これらは、オフメッシュリンクが使用されたとき、または、例えば、特定のアニメーションを再生する瞬間を検出できるという付加的な利点があります。
さらなる詳細 - ナビメッシュの作成 – NavMesh ベイクのワークフロー - Building Off-Mesh Links Automatically - 自動 Off-Mesh Link 生成の詳細。 - 正確にキャラクタを配置するための Height Mesh ビルディング – Height Mesh ベイクのワークフロー。
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.