使用线性速度移动如何消除位置偏差

做的是一个2D多人同屏对战游戏,然后帧同步中每一帧发送的是虚拟摇杆的位置偏移,然后通过偏移计算出一个线性速度来使得人物移动。

现在的问题是,AB两个玩家的位置,在不同的设备上,走着走着就有了偏差,比如说在C设备上,AB相距两个格子,在D设备上则相距一个格子距离。

想知道为什么会出现这种现象,一开始我觉得是精度问题,可是现在改成只保留一位小数了,依然会这样,各位大佬有啥好的对策不?

刚接触这类型的游戏,啥意见都愿意听,主打一个听劝!!

针对偏差的单位,打日志, 对比两个设备的日志应该可以看出来是什么问题

不能用浮点数。

意思是线性速度的xy都只能是整数吗?

帧同步游戏中,所有的数学运算,都用整数。
参考这篇文章中的:https://forum.cocos.org/t/topic/158452
image

1赞

感谢大佬,有空还去看你直播!!!

1赞