项目没有使用刚体,但是想让角色做一个抛物线运动,用向下加速度、运动总时间,算出竖直方向的初速度之后,让角色 position 每帧随速度改变,速度每帧随加速度改变。本来以为这样实现会很完美,但是很可惜到不了目标点。
两个原因:
1.浮点数字存在误差,每帧累计的误差最终完全偏离。
2.最后一帧运动距离超过实际与目标点的距离,无法判定距离小于目标值的之后距离又不断增大
解决:
1.每帧重新计算一次速度
2.当运动距离超过实际与目标点的距离时,更改位移量为与目标点的距离(所有需要达到目标点的位移,都应该加上这个判定)