问题的根源在于Astar路径搜索依赖于场景中的对象,但ayer Clone / Instantiate创建的对象不在场景中。这可以通过将ayer Clone / Instantiate创建的对象添加到Astar的图形中来解决。
以下是示例代码,演示如何将ayer Clone / Instantiate创建的对象添加到Astar图形中:
- 在Astar Graph Inspector中,选择“Scan”选项卡。
- 在“Scan”选项卡中,找到“Tag Mask”设置,并将其设置为包含ayer Clone / Instantiate对象的标记。
- 在代码中使用GraphUpdateObject对象来更新Astar图形,如下所示:
在上述代码中,我们首先创建一个GraphUpdateObject对象,该对象将包含ayer Clone / Instantiate对象的范围作为参数。然后,我们在Update()中检查玩家对象是否移动。如果移动,我们使用AstarPath.active.UpdateGraphs()方法更新Astar图形,并将之前创建的GraphUpdateObject对象用作参数。
通过这种方法,我们可以将ayer Clone / Instantiate对象添加到Astar图形中,并在玩家对象移动时更新该图形,以确保路径搜索正常工作。
© 版权声明
文章版权归作者所有,未经允许请勿转载。