导航概览
导航常用属性
属性 | 备注 |
---|---|
avoidancePriority | 规避优先级 0-99 值越大,级别越高 |
destination | 获取代理在世界坐标系单位中的目标或尝试设置代理在其中的目标 |
isStopped | 此属性持有导航网格代理的停止或恢复条件 |
nextPosition | 获取或设置导航网格代理的模拟位置 |
updatePosition | 获取或设置变换位置是否与模拟的代理位置同步。默认值为 true |
updateRotation | 代理是否应该更新变换方向? |
velocity | 获取 NavMeshAgent 组件的当前速度,或者设置一个速度来手动控制代理。 |
remainingDistance | 代理的位置和当前路径上的目标之间的距离。(只读) |
steeringTarget | 获取路径中的当前转向目标。(只读) |
pathPending | 是正在计算过程中而尚未就绪的路径吗?(只读) |
stoppingDistance | 在距目标位置的这一距离内停止。 |
Warp | 将代理调整至指定的位置。 |
导航遇见的一些问题及解决办法
导航立即停止。
agent.SetDestination(transform.position)
当代理接近当前目标点时。
if (!agent.pathPending && agent.remainingDistance < 0.5f)
导航与角色动画的使用,避免脚滑。
使用导航的动画驱动角色
使用A* Pathfinding Project插件,进行局部规避,可以一定程度上避免agent之间互推。