NavMeshAgent参数及API

本文详细介绍了Unity中NavMeshAgent组件的各项参数及其功能,包括Agent大小、速度控制、避障设置、路径跟随及API使用。通过调整参数,如半径、高度、速度和角速度,实现精准的角色移动和路径规划。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Paste_Image.png

  • Agent Size

Paste_Image.png

  • Radius:半径。

  • Height:高度。

  • Base Offset:偏移值。

  • 在添加了NavMeshAgent组件的对象上直观的影响。

Paste_Image.png

  • 调节以上参数,将会影响外部的Agent线框。
  • Base Offset指的是Y轴上的偏移。

Steering(操控行为(详情见Game AI篇,AI底层))

Paste_Image.png

  • Speed:在NavMesh上移动的最大速度

  • Angular Speed:角速度

  • Acceleration: 物体从静止到最大速度的加速度

  • Stopping Distance:停止距离(常与remainingDistance一起使用)

  • Auto Braking:是否自动减速。(不勾选的话如果速度太快,物体会冲过去目标点以一定的惯性返回目的地)

Obstacle Avoidance(避障)

Paste_Image.png

  • Obstacle Avoidance
    • Quality(质量)(枚举)

      • None : 无

      • Low Quality:低质量

      • Medium Quality:中等质量

      • Good Quality: 高质量

      • High Quality: 高质量

    • Priority: 优先值,低优先值的会给高优先值的让路。

Path Finding(路径跟随)

  • Path Finding
    • Auto Traverse Off Mesh Linked:

    • 是否自动分离网格。(勾选时到达分离点时会从该分离点移动到另外一个分离点。)(一般不勾选,因为要配套爬墙或者跳跃的动画)

    • Auto Repath

    • 是否自动重新规划路线。

    • Area Mask

                网格遮罩。(枚举,规定物体可以通过的区域)

  • NavMeshAgent API:

Paste_Image.png

  • 在检视面板中看到的Agent参数都可以用过脚本获取并控制。

  • 一些常用的参数。

  • destination属性:可以设置目标点(SetDestination(target)方法相同效果)

  • nextPosition:获取或设置模拟navmesh代理的位置,可以手动的驱动角色进去移动(配合动画使用)

  • remainingDistance:物体当前位置与目标点的剩余距离。(设置了StopDistance后会出现一个问题,到时可以用这两个参数去调节)

  • UpdatePosition,UpdateRotation两个值都为bool值,可以通过更改他们俩,停止使用Agent组件来驱动物体移动和旋转。

  • isOnNavMesh: 判断物体是否在导航网格上。

  • isOnOffMeshLink: 判断物体是否在分离网格链接上。

常用方法。

  • SetDestination(Vector3 position): 设置目标点。
  • Stop(): 停止寻路。
  • ResetPath():清空当前路径。
  • Resume(): 停止游戏角色进行移动,并重新开始移动(原路径)。
  • Wrap(Vector3 position):将物体瞬移到目标点。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

隨意的風

如果你觉得有帮助,期待你的打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值