游戏场景中的帧率(cocos2d box2d)降级

时间:2011-08-17 04:14:30

标签: iphone cocos2d-iphone box2d

一个有多层蚂蚁的游戏场景很多精灵,工作得很好(除了一些问题)。但是如果我们将游戏暂停,持续5-10分钟(大约)的长时间,它的帧速率会下降,游戏开始时再次开始播放会产生不稳定的效果。

这里最初使用的默认帧速率是默认ccMacros.h

#define CC_DIRECTOR_INIT()                                                                      \
do{                                                                                         \
window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];                   \
if( ! [CCDirector setDirectorType:kCCDirectorTypeDisplayLink] )                             \
    [CCDirector setDirectorType:kCCDirectorTypeNSTimer];                                    \
CCDirector *__director = [CCDirector sharedDirector];                                       \
viewController = [[RootViewController alloc] initWithNibName:nil bundle:nil];               \
viewController.wantsFullScreenLayout = YES;                                                 \
[__director setDeviceOrientation:kCCDeviceOrientationLandscapeLeft];                                \
[__director setDisplayFPS:NO];                                                              \
[__director setAnimationInterval:1.0/60];                                                   \
EAGLView *__glView = [EAGLView viewWithFrame:[window bounds]                                \
                                pixelFormat:kEAGLColorFormatRGB565                          \
                                depthFormat:0 /* GL_DEPTH_COMPONENT24_OES */                \
                         preserveBackbuffer:NO];                                            \
[__director setOpenGLView:__glView];                                                        \
[viewController setView:__glView];                                                          \
[window addSubview: viewController.view];                                                   \
[window makeKeyAndVisible];                                                                 \
} while(0)

编辑:场景是,应用程序保持正常工作,即使我打五分钟或十分钟但框架速率在我们离开应用程序联合国同一时间段的时候下降有什么方法可以不时刷新应用程序?

2 个答案:

答案 0 :(得分:4)

低帧是由于许多原因造成的,例如内存使用效率低下,使用NSTimers,在预定选择器内绘制任何内容等等。确保释放正在分配的内存 只需看看下面可能有助于提高游戏中帧速率的链接:

答案 1 :(得分:1)

当我尝试所有的东西时,@尼蒂什建议但是,在一次运动中,每件事都要失败。因为降级帧速率仍是一个问题。通过谷歌搜索太多,并试图找出原因和解决方案,我只有成功才有理由,因为我无法负担解决方案。要检查我得到了什么,CHECK THIS LINK