[笨木头Cocos2dx044]3.0alpha0版本移植Android后运行黑屏的解决方法

时间:2022-11-27 09:07:52

最近在研究Cocos2d-x3.0alpha0版本,虽然还不是正式版,不过倒是蛮想玩一玩的。

 

试写了一些代码,感觉还可以,就是类名字什么的改动太大,要想复用以前的代码还真是有点纠结(好吧,也许可以批量改)。

OK,这次就不唠叨了,相信不少人都会遇到在Android上跑的时候会黑屏。

 

笨木头花心贡献,啥?花心?不呢,是用心~

转载请注明,原文地址:http://www.benmutou.com/blog/archives/742

正文:

 

百度了很久,在官方论坛也没有找到类似的情况。

查看打印日志,最后发现凶手的就是 nativeactivity.cpp的日志:

engine_draw_frame : No display.

 

好,换了一下搜索的关键词,结果还是在官方论坛找到了,原文如下:

http://www.cocos2d-x.org/forums/6/topics/33597?r=35749#message-35749

(小若:不想看英文!)

 

好吧,我也不想写英文,最终在上面的帖子里找到的有用的连接如下:

https://gist.github.com/michaelcontento/6665344

 

大概要做的事情就是:

1. 找到引擎目录的cocos2dx/platform/android/nativeactivity.cpp文件

2.打开它(小若:废话!)

3.找到这个函数:static cocos_dimensions engine_init_display(struct engine* engine)

4.在const EGLint attribs[]数组里新增一条数据:EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT,

5.OK,重新编译,然后黑屏的问题应该就解决了(也不能测试所有机型,反正官方以后会处理这个Bug的吧)。

如果你要问原因,原因就是…我才不告诉你呢= =