You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity NavMesh:如何缩小与碰撞体的间距?

调整NavMesh Surface与碰撞体的偏移距离方法

我烘焙的NavMesh Surface与碰撞体之间留出了较大的间距:

NavMesh与碰撞体间距过大

例如,在上方图片中,我需要NPC在粉色球体位置待机,但NavMesh Surface并未覆盖该区域。是否有方法调整NavMesh Surface的偏移距离?

NavMesh Surface设置面板

以下是几种可行的解决方法:

  • 缩小NavMesh Agent的物理参数:如果你的NavMesh Agent半径(Radius)和高度(Height)设置得太大,烘焙时导航网格会自动远离碰撞体来适配Agent尺寸。直接调小这两个参数,重新烘焙后,导航网格会更贴近碰撞体。

  • 提高NavMesh Surface的烘焙精度:
    选中NavMesh Surface组件,在Inspector的Advanced栏里,勾选Override Voxel Size,然后减小Voxel Size数值(数值越小,烘焙精度越高,网格贴合度越好)。同时调低Min Region Area,让原本被忽略的小区域(比如粉色球所在位置)也能被纳入导航网格。

  • 用NavMesh Modifier强制扩展区域:给粉色球所在区域的碰撞体添加NavMesh Modifier组件,设置正确的可行走区域类型;如果是孤立区域,还可以用NavMesh Link把它和主导航网格连接起来,让NPC能正常移动过去。

内容的提问来源于stack exchange,提问作者anderlaini

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 02:21:05