还是update(dt)问题。如果一帧时间不够完成计算。

update(dt)里的计算量如果太大,1/60秒都没有完成,那会是什么情况?卡吧?

是不是即使过了1/60秒也要等这次update完才进行第二次update(dt)?

如果降低帧数,改成1/3秒update一次,同样的计算量,还会不会卡呢?

怎么写能直接让他1/30秒调一次update(dt)?

感觉30fps,不是太流畅吧

对。。。我试了。。。塔防游戏。30帧,子弹跑得快一点感觉就有点卡。

我是把有些计算控制了interval。显示上还是用的原来的60帧。
我的疑问是,虽然我把计算的频率降低了,但每次所有计算还是在一帧中完成。
不知道这么做有没有效果。能不能解决卡的问题。

显示相关的,包括计算位置。。。

我说的30帧的计算是计算速度,目标等。

试过30帧 感觉连基本的CCMove都不平滑了…不知道还能怎么优化,求解~

1/60改1/30在帧数设置那改了不就行了吗?
update(dt)中的dt应该是表示上一帧到这一帧花费的时间吧?那只要把那些在update中不断变化的变量(如人物X坐标+=a之类的)后面乘个dt不就行了吗?这样无论游戏最终运行时是多少帧人物的移动速度都是恒定不变的~~

我们也是这个问题,代码写了一大半了发现在真机上非常卡。无奈之下正在改用cocos2dx v3.0 lua 。。。把部分运算量大的工作仍然放在C++处理,lua只负责改变状态和UI实现……

等quick3.0给力以后再转回来吧……擦