Navigation2D 总是 return 空路径

Navigation2D always return empty path

我有一张包含 16 个图块的图块地图,例如:

每个磁贴都有定义的导航(尽可能大):

但大多数时候 Navigation2D return 当我点击一个图块时是一个空数组

代码可以在Github上找到:link to repo

如您所知,在编辑器的“调试”菜单中,有“可见碰撞形状”和“可见导航”选项。启用它们,然后玩游戏。

正如选项名称所示,它将向您显示碰撞和导航形状。您要确保:

  • 磁贴导航保留在磁贴内。
  • 瓦片导航不与瓦片碰撞重叠。
  • 磁贴导航本身不重叠。
  • 相邻图块的图块导航之间没有间隙。

如果您发现任何这些问题,请为有问题的图块重做导航形状。一些建议:

  • 捕捉:编辑图块导航时,单击“启用捕捉并显示网格”图标。在 Inspector 面板上,您会发现“Snap Options”将步骤设置为适合您的内容。 您的图块是 44x44,所以 4 步可以,11 步也可以。
  • 同时单击“将多边形保留在矩形区域内”。
  • 不要在边缘开始导航形状。 这很奇怪,但我发现如果我从边缘开始,它会导致自重叠导航(我注意到使用上面提到的“可见导航”)。

导航和碰撞之间的间隙是可以的。

另外,记得编辑 TileMapTileSet。如果您正在独立编辑 TileSet,您可能需要再次将其设置为 TileMap有了上面提到的Debug选项,如果没有更新应该就足够了。

是的,我从链接的存储库下载了代码,并设法让它工作。我做过的其他事情,但我认为并不重要:我确保导航形状中没有重复点(如果您发现在编辑时必须单击两次才能使点出现,则您可能正在重复点,只是而是单击下一个位置)。我还将碰撞形状移动到播放器的中心。