Unity PolyNav2D(2D寻路) 插件

下载地址

https://download.csdn.net/download/qq_27461747/87300286

组件

  • PolyNav2D 寻路地图,一般来说 有且只有一个, 寻路的主要接口就在这个组件里
  • PolyNavObstacle 障碍物
  • PolyNavAgent 导航代理, 带有移动功能。这个可有可无,可以自己实现

PolyNav2D 必须搭配一个碰撞器(表示导航的范围)

  • Obstacles Mask 障碍物的 Layer,只有在这个层级的障碍物才有效
  • AutoRegenerateInterval 更新障碍物的间隔,如果障碍物会更新的话,就需要,否则配置0
  • Radius Offset 障碍物范围加大。因为单位有体积。

PolyNavObstacle 必须搭配一个碰撞器(表示障碍物的范围)

  • ShapeType 障碍物形状,跟碰撞器有关
  • ExtraOffset 跟 PolyNav2d 中的 Radius Offset 一个意思
  • invertPolygon 是否反转多边形的点,如果同一个游戏物体上有 SpriteRenderer,则自动为真。 这个要非常注意,我的建议是,除非使用SpriteRenderer自动生成的碰撞器,否则就不该勾选。

PolyNavAgent

map 可以指定一个 PolyNav2D, 如果不指定那么会默认使用场景中找到的第一个

SetDestination 导航到某个位置。

1.如果出现寻路找不到路径。首先要给 Radius Offset 设置一个非0值
2.如果还找不到路径, 看障碍物是否勾选invertPolygon, (SpriteRenderer)为障碍物的情况下,这个无效。
查看编辑器障碍物的辅助线, 碰撞器应在 障碍物 辅助线的内部,如果反了就找不到路了。默认创建的多边形碰撞器就是反的,手动调好。

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_27461747/article/details/128340318
今日推荐