engine-native icon indicating copy to clipboard operation
engine-native copied to clipboard

切后台或调用SDK返回时黑屏

Open stlnkm opened this issue 6 years ago • 2 comments

我做了一个在Android手表上运行的游戏,切后台或调用SDK授权(授权机制类似微信)返回时黑屏,查看cocos2d-x-lite代码发现去掉了纹理缓存和重建,请问这是为什么呢?

stlnkm avatar Dec 07 '19 05:12 stlnkm

用1.x版本的cocos creator解决了

stlnkm avatar Dec 09 '19 17:12 stlnkm

如果不用老版本,该如何解决?

我是要显示别的UIView,如果那些别的UIView(他们也用opengl)没有允许他们自由切换横竖屏的话,返回没有问题。 如果允许他们自由切换横竖屏的话,就会出问题。 我尝试重建context,,重启mainloop,但是没有成功。

我在CCApplication-ios.mm里加上 void Application: pause(){ if(_delegate){ [(MainLoop *)_delegate stopMainLoop]; [(CCEAGLView *)_view releaseCtx]; //我把整个GLCtx销毁,上面那行已经确保不再使用它了。 } }

void Application::resume(){ if(_delegate){ CCEAGLView *eaglview=()_view; [eaglview setupGLContext]; eaglview.cbOnLayoutDone=^{
[(MainLoop *)_delegate startMainLoop]; }; [eaglview setNeedsLayout]; //CCEAGLView.layoutSubviews里头会重新申请绑定显示帧内存 } }

jackzhp avatar Feb 22 '20 08:02 jackzhp