如何使用Cocos2D将OS X中的帧速率限制为30fps



我正在使用Cocos2D 1.0.1将我的一款iOS游戏移植到OS X上(结果与Cocos2D 2.0相同),但我在将帧速率限制在30fps时遇到了问题。在iOS中调用setAnimationInterval可以完美地限制帧速率,但在OSX中没有任何作用(我试过在任何地方调用它,很多次等等)。

[director setAnimationInterval:1.0/30];

我也尝试过设置TimeScale,但这并没有以任何方式正确地限制帧速率。([[CCScheduler sharedScheduler] setTimeScale:X]

如果有人在OSX中成功地限制了帧速率,特别是在Cocos2D中,请告诉我。

编辑:谢谢你。事实上,我已经在用了。我很抱歉我的代码不够清晰。director只是共享director的快捷方式,如下所示:

CCDirectorMac *director = (CCDirectorMac*) [CCDirector sharedDirector];

所以最后的代码仍然调用你给出的代码:

[[CCDirector sharedDirector] setAnimationInterval:1.0/30];

谢谢你的回答,redux。不过,帧速率仍然没有限制。奇怪的是,由于setAnimationInterval一直在iOS上工作,但在Mac上没有做任何事情(尽管导演在iOS上会有所不同,但仍然如此)。

我确信任何对director的调用都是不推荐的,需要使用CCSharedDirector。试试这个:

[[CCDirector sharedDirector] setAnimationInterval:1.0/30]; 

最新更新