今天发现手机浏览器在update下移动人物,发现有时有轻微的抖动,最后把dt时间打印出来,发现时间有很大的波动,有时会是13毫秒,有时22毫秒。但从cocoscreator显示的帧率上看一直是保持60桢。这个问题该如何解决?我改为moveto也会有同样的问题。
设定一个速度,update间隔时间内移动的距离用速度*dt,这样移动就是平缓的.
1赞
速度值一样,dt不稳定,每桢会有像素偏差,如果低速还感觉不到,高速移动时就能发现
你可以用dt来平衡速度啊
啥叫 用dt 平衡速度
假设速度是speed
那么你可以 speed * dt 来平衡每帧的速度,达到每帧平稳(不抖动)
低速是这样的。但高速的时候就坑了,很高几率出现最终s和理论不一致。所以高速的时候最好用帧来作时间单位。
我之前用的dt,也是有抖动现象,查到和楼主一样的原因,后来就不用dt了,用了固定值,例如60帧,就用1/60,这样就不抖了。