我正在尝试在Unity上重新创建Snake VS Block游戏, 目前,我在每次更新时都保存蛇头位置(将其添加到列表中),列表的最大长度(保存位置)等于蛇体部位的长度,如果列表大小大于蛇的大小,我将删除第一个元素并将new添加到列表的底部。
蛇头按速度(Y)和鼠标位置(X)移动,因此您可以控制蛇头的水平移动,但垂直移动会随着时间而自动增加。
然后我遍历列表并按照以下逻辑移动蛇形部分:
SnakeParts[i].transform.position = Positions[Positions.Count-i];
几乎所有东西都可以正常工作,但是有一个问题,我无法保持身体各部位之间的固定距离,该距离始终取决于蛇头speed
,因为Positions
列表中的元素已添加到每帧(所以它们之间的距离就是增量速度),
我正在寻找更好的方法或改进我的计划,请记住我希望身体部位遵循蛇头的确切路径
感谢阅读。