OStack程序员社区-中国程序员成长平台

标题: iphone - Cocos2D iPhone - 去除CCTransition之间的黑屏 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 11:44
标题: iphone - Cocos2D iPhone - 去除CCTransition之间的黑屏

我在我的应用程序上使用 cocos2d。我正在使用

过渡到另一个场景
[[CCDirector sharedDirector] replaceScene: 
 [CCTransitionFadeDown transitionWithDuration:0.5f scenetherScene]];

在另一个场景的初始化部分,正在使用 CCMenu 构建一个菜单。这是一个全屏菜单。

我的问题是这样的:过渡发生在黑屏上,然后出现菜单。换句话说,在渲染菜单之前已经完成了转换,所以,我看到一个难看的黑屏 0.5 秒,然后,在转换完成后,我看到了菜单。

为了清楚起见,假设第一个场景有一张船的照片,第二个场景有一张汽车的照片。我现在所拥有的是船过渡到黑色,然后汽车弹出。我需要将船过渡到汽车。

我该怎么做?谢谢。

注意:我找到了 this guy with the same problem ,但我尝试了该解决方案但没有成功。



Best Answer-推荐答案


如果您还没有使用它,值得一试;它消除了场景加载期间的黑色闪烁。在切换场景之前运行以下方法,以防它影响您的问题(取消注释这些行并直接调用该方法):

- (void) removeStartupFlicker
{
    //
    // THIS CODE REMOVES THE STARTUP FLICKER
    //
    // Uncomment the following code if you Application only supports landscape mode
    //

    //  CC_ENABLE_DEFAULT_GL_STATES();
    //  CCDirector *director = [CCDirector sharedDirector];
    //  CGSize size = [director winSize];
    //  CCSprite *sprite = [CCSprite spriteWithFile"Default.png"];
    //  sprite.position = ccp(size.width/2, size.height/2);
    //  sprite.rotation = -90;
    //  [sprite visit];
    //  [[director openGLView] swapBuffers];
    //  CC_ENABLE_DEFAULT_GL_STATES();

}

关于iphone - Cocos2D iPhone - 去除CCTransition之间的黑屏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9389523/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4