因为帧同步计算全部是由客户端计算的,所以必须保证同样的条件下,计算出来的结果一致
定点数问题
下图是有数十个CharacterController在做无定向运行,程序严格控制了时序的执行
要求运行600帧之后每个物体的位置都一样
PC平台多次运行一致
安卓平台多次运行一致
但是不同平台的结果*!!!!!!!!不一致!!!!!!*****
因为不每个平台对浮点数计算的结果会不一样
也因为UNITY内置的物理引擎使用了浮点数计算,导致了不同平台下会有微小的差异
比如 characterController.Move(dir)
所以要解决这个问题需要确保平台结果一致,那就是用定点数替代浮点数
只要有关浮点的计算都要替换成的定点数,比如寻路,物理
(本文持续更新更新中)