我正在联合的2D游戏中工作,并且正在使用来自Aron Granberg的寻路包。
一切看起来都很好。AIPaths正在生成,AI代理正在从一个点导航到另一个点,并按照预期避免障碍。没关系,除了一件事。
AI代理的position.z
不正确。
AI Agent的产卵源z为0,目标点为0,而AI Agent的z在遍历路径时在-9和-1之间波动。路径本身在每个路径点上的z位置似乎为0。
我根本没有修改包中的代码,只是在为2D设置它时遵循了文档。
有什么原因吗?
注意:我没有包含它的屏幕截图,但是当AI代理的转换位置为(0,0,0)时,正在生成的预置文件。
A星寻路器对象:
AI代理对象(注意Z pos不是0):
:为AI代理设置产卵点对象:
:AI代理要指向的目标对象:
发布于 2021-06-14 02:09:46
以防其他人遇到这个问题。
修复方法是向我的人工智能代理添加一个Rigidbody2D,并将重力标度设置为0。
虽然我的游戏不使用统一的物理系统进行运动,而且Astar包可以通过转换移动AI代理,但出于某种原因,它需要一个刚体来保持Z位在0。
我仍然不确定为什么这会解决这个问题,因为当我调试第三方Astar代码时,它总是返回Z位置为0的nextPosition值,但是AI代理被更新为有不同Z位置的实际位置.
如果你有更多的信息,请留下评论,我会把它添加到答案中。
https://stackoverflow.com/questions/67955043
复制相似问题