最近在研究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的吧)。
如果你要问原因,原因就是…我才不告诉你呢= =