cocos2d x权威指南-x v3.0 TestCpp运行的问题,之前运行是能显示菜单的,现在就是一片黑,求大神说说怎么回事,

你好,我是今天那个问你cocos2d-x的那个人,我在运行testcpp时出现这样的错误_百度知道
无法理解你这个问题出现的情况,怎么运行也不清楚,你不如加个cocos2dx技术群了解下,私信群号了
嗯,好的,谢谢你!
来自:求助得到的回答
其他类似问题
按默认排序
其他1条回答
关掉杀毒软件,试一下,昨天还是前天还碰到了
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁一般而言,如果你导入TestCPP到VS2012中去后,会编译十几分钟才会出现窗口界面,这是包含Cocos2dx所有功能的一个demo,功能非常齐全强大,里面有两个关于Box2d的测试案例,一个是Box2dTest,另一个是Box2dTestBed,运行发现,Box2dTest运行不了,提示说&Should define CC_ENABLE_BOX2D_INTEGRATION=1\n to run this test case&。
说是要定义CC_ENABLE_BOX2D_INTEGRATION这个宏为1,那要怎样定义呢,可以再程序的最初入口定义,或者打开TestCPP的工程属性,打开[C++]-&[预处理器],找到预处理器定义,在里面添加&CC_ENABLE_BOX2D_INTEGRATION=1&即可,此时TestCPP它的CC_ENABLE_BOX2D_INTEGRATION这个宏就是1了。
然后我试着再次跑了一下TestCPP工程,发现Box2dTest仍然不能运行,此时的错误不是CC_ENABLE_BOX2D_INTEGRATION没有定义,而是弹出了一个断言对话框,我F5调试进入,才发现,运行到libExtensions这个工程里面的如下代码:
1 void PhysicsSprite::setB2Body(b2Body *pBody)
3 #if CC_ENABLE_BOX2D_INTEGRATION
_pB2Body = pB
CCASSERT(false, "Can't call box2d methods when Box2d is disabled");
运行跑到了这里:CCASSERT(false, "Can't call box2d methods when Box2d is disabled");才发现,在libExtensions中也有CC_ENABLE_BOX2D_INTEGRATION这个启动Box2d的宏开关。我看了看CCPhysicsSprite.cpp这个文件,在文件的头部,有行注释:
1 #if (CC_ENABLE_CHIPMUNK_INTEGRATION && CC_ENABLE_BOX2D_INTEGRATION)
2 #error "Either Chipmunk or Box2d should be enabled, but not both at the same time"
发现libExtensions库,只能同时支持一个物理引擎,要么是Chipmunk要么就是Box2d,默认是支持Chipmunk的。
到此处,才真正找到根源,解决的办法就是给libExtensions工程添加CC_ENABLE_BOX2D_INTEGRATION标记,并且让其=1,并让CC_ENABLE_CHIPMUNK_INTEGRATION=0.
//本文作者:cmlanche &文章内容目前的写法仅仅作为一个笔记,自己参考,并不想特意解释让别人明白
// & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & &&
阅读(...) 评论()

我要回帖

更多关于 cocos2d 的文章

 

随机推荐