cocos2d-x 出错集。
来源:互联网 发布:win10录屏软件 编辑:程序博客网 时间:2024/05/16 09:22
1、[vs2010, cocos2dx-2.0.4/2.1.x/xxx]Unable to start program以及新建不了cocos2dx项目(点新建项目框框的OK就立刻弹出原新建项目框)
当Debug或Ctrl+F5运行出现如上错误时;
解决:这是一个cocos2dx win32环境搭建环节出问题,所以我百度,找到这个帖子:http://blog.csdn.net/aa4790139/article/details/8086635,发现其中正文里的“--->[补充:在win32下创建自己的工程,为了以后方便,也将此内容更新到此处~
第一步:运行InstallWizardForVS2010.js(我用的是vs2010,你选择对应的,我的目录如下:D:\work\cocos2d-x-2.0.1\template\msvc)]<---”
我没有做到,所以按这个步骤去做,后来就能无错运行了;
2、[vs2010, cocos2dx-2.0.4]Assertion failed!(ccnode.cpp Line:536, child!=0)
遇到这问题,仔细看其内容,发现是与ccnode.cpp中的第536行内容有关,其536行是addChild函数,结合其报错内容:child!=0,可知道,报错信息与代码的addChild(,,,)函数有关,且是实参函数的问题。将报错内容范围缩小至此,再回去源代码仔细阅读,发现,自己的一处addChild()语句中的实参为NULL,没有初始化成功。
故暂得如下结论:出现如上错误,则是addChild()语句中的实参为NULL,没有初始化成功。
3、[vs2012, cocos2dx-2.2.2]nptr != null
这是空指针报错,如果是按下某个按钮出现这种,大多数是按钮对象为空指针了,可以进一步查看堆栈信息进而确定。我刚才没有往这方面去想,是因为上一次调用还好好地,然后再调式一遍的时候就出错了,原来是自己在SVN把UI资源给还原掉了。
4、[vs2012, cocos2dx-2.2.2]屏幕静止不动,无报错也无弹出对话框
死循环!遇这种情况,也多半是这样。
5、[vs2012, cocos2dx-2.2.2]转换场景几次就报内存调用错误
场景转换几次,就会报内存调用错误,打断点进去看,是说其中一个控件指针为空,找不到。后来细看,原来是有几个控件指针对象没有retain却在所在的显示类的析构函数处release(随后便被delete掉)了,这是典型的内存泄露!retain和release(非delete)必须成对出现。BTW:时刻遵循MVC模式,V仅仅是显示,任何读取数据的运算能在M中运行就在M中运行,然后由C(中间件,C不是必须存在的)返回给V。
6、[vs2012, cocos2dx-2.2.2]child->m_pParent == 0
这问题就是你被添加的节点在添加过后,会拥有两个父类,即“儿子不可以同时又两个父亲”,在cocos2dx中,在listview中添加item元素是很正常的,但往往直接添加item(如button,img,sprite)会弹出框parent == 0(即你添加的节点的父类 !=0 ),所以,很多时候是用CCNode类自己new一个节点,将它作为其他若干item的父节点。这里就注意不要某一子节点对象连续作为不同父类对象的子类(即作为addchild()的参数)。
PS:网上有位同学说可以用removeFromParentAndCleanup将父类子类的关系解除,大家可以去试试。
7、utf8转utf16问题(Button的setTileText无效)
问题起因是这样的,ui::Button里有个setTileText,我动态设置了按钮的文本表现(中文字符),但是游戏运行的时候发现并没有改变,于是跟进去setTileText源码去看,发现其_titleRenderer->setString(text);里会将传入的text转为utf16,而转化成功的utf16才是真正需要展示的成员变量,但是在StringUtils::UTF8ToUTF16的过程中就出错了(返回targetExhausted错误)。后来查明原因,是原来设置中文字符的文件.cpp的文件编码格式不对。
说到这里就是VS比较坑了,因为我在VS里是设置了utf8的编码格式,但实则无效,我是在网上下了个转码工具再转了一遍才成功的。
- cocos2d-x 出错集。
- cocos2d-x编译出错
- cocos2d-x 编译时出错
- Cocos2d-x Cocos2dxAccelerometer和Cocos2dxGLSurfaceView出错解决方案
- Cocos2d-x Cocos2dxAccelerometer和Cocos2dxGLSurfaceView出错解决方案
- cocos2d-x精灵切换动作出错
- Cocos2d-x lua Console编译出错
- 【Cocos2d-x】之编译so文件出错
- 【cocos2d-x】cocos2d-x 3.2 在 NDK10下编译出错的解决方法
- Cocos2d-x-2.1.4编译出错error MSB3073
- Cocos2d-x 3.2编译生成Android程序出错的解决方案
- Cocos2d-x 3.2编译生成Android程序出错的解决方案
- 关于在Cocos2d-x中加载TileMap出错的情况
- cocos2d-x-v3安卓平台tinyxml2读取xml出错
- cocos2d-x 资源集
- cocos2d-x 问题集。
- cocos2d-x工具集
- cocos2d-x-bug集
- SEOer们该如何操作把持更多的SEO威力?
- mysql源码安装官方文档
- VS2008下Boost库的安装编译
- 在C#中SendMessage和PostMessage的参数传递
- ArcMap中添加gdb数据时显示为空问题
- cocos2d-x 出错集。
- Foxit Reader出现脚本错误提示的解决方法
- NGUI简易背包
- JS压缩工具---yuicompressor
- PHP实现同服务器多个二级域名共享 SESSION 数据
- 6-1通过原型继承创建一个新对象
- Remove Duplicates from Sorted List II
- 如何解决php中并发读写文件冲突的问题
- C++模板实战5: 迭代器与容器