如果对诸如金属球之类的图像进行动画处理,并且其宽度约为20像素,并且速度约为每秒200像素,那么如果刷新速率为每秒60帧,则该球每秒将移动约3像素,这是球的宽度的1/6(16%)。 (如果是“愤怒的小鸟”,则蓝鸟的大小大约为20像素,并且移动的更加平滑,而不是每次3像素)。
似乎这样,球以某种锯齿状运动。如何使它平稳运行?那会要求刷新率超过每秒60帧吗?如果是,该如何完成? (CADisplayLink
用作计时器,因此现在为每秒60帧。NSTimer
可以使其刷新更快,但NSTimer
可能会延迟并且无法告知自上次刷新起经过的时间。)
最佳答案
我正在尝试做像您一样的事情,但仍会得到同样令人不快的“闪烁”。这是我的代码http://paste.ideaslabs.com/show/1FZoo6AQtu
我正在阅读一些OpenGL文档,并且GLKViewController的属性preferredFramesPerSecond看起来很有希望。可能是对OGL / GLK有更多经验的人可以帮助我们。
关于ios - 在iOS上,是否可以每秒刷新60帧以上?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10240152/