CCGLView闪烁问题



我的viewController中有一个CCGLView,在完成动画后,我试图用空场景替换CCGLView中的场景。问题是,在替换场景时,我可以观察到闪烁。我想避免它,我提供了下面的代码。我必须改变什么才能避免这种闪烁?

CC3Layer* layer=[[CC3Layer alloc]init];
CC3Scene* scene= (CC3Scene*)layer.scene;
scene.backdrop= [CC3Backdrop nodeWithColor:ccc4f(0.0/255.0, 0.0/255.0, 0.0/255.0, 0.0)];
[scene updateScene];
[self.director replaceScene:[layer asCCScene] withTransition:[CCTransition transitionCrossFadeWithDuration:1.0]];
[self.director stopAnimation];

一个问题是CC3Layerscene属性返回的是CCScene实例,而不是您期望的CC3Scene实例。无论如何,在您的代码中,scene属性将返回nil,因为它尚未设置。请尝试使用cc3Scene属性。

您还没有指出要在哪里运行此代码,但如果我将以下代码添加到CC3HelloWorld模板应用程序的nodeSelected:byTouchEvent:at:方法中,则转换运行平稳,没有任何闪烁:

CC3Layer* layer=[[CC3Layer alloc]init];
CC3Scene* scene= layer.cc3Scene;
scene.backdrop= [CC3Backdrop nodeWithColor:ccc4f(0.0, 0.5, 0.5, 1.0)];
[CCDirector.sharedDirector replaceScene:[layer asCCScene] withTransition:[CCTransition transitionCrossFadeWithDuration:1.0]];

票据

相关内容

  • 没有找到相关文章

最新更新