摘要: 美术做了个ccb中嵌套若干个子ccb的动画,其中子ccb A和B是一开始就播放的,CDE是在播放了一段时间后再通过visible设置显示出来。这个动画在CocosBuilder播放很正常,但是放到cocos2d-x里面就不对,子动画不能正常的动。跟踪调试了1天半才搞清楚标,问题在runAnimationsForSequenceIdTweenDuration这个函数里,这个函数有两处stopAllAction:mRootNode->stopAllActions()这个会在每个子ccb每次自己结束后的回调时进入该函数被调用,效果是会造成子ccb的visible不正常显示出来,压根看不到。具体 阅读全文
posted @ 2013-10-15 17:02 unionfind 阅读(1008) 评论(0) 推荐(0) 编辑
摘要: 首先有个前提知识,cocos2dx里,只能在ui线程(通常也就是主线程)中进行渲染工作(貌似现在有一些引擎是支持多线程渲染的,没有深入研究),否则大约会因为多个线程同时给GPU发指令而出现问题,比如setstring出现黑块。今天这个bug出现的原因是在C++代码里通过jni调用java来显示键盘,在输入完成后,再在java里面通过jni回调C++的代码来setstring。貌似C++代码里面通过jni调java这件事情新起了个线程,导致了java回调C++的setstring操作就不在主线程里面了,从而出现问题。只在Android有问题,pc正常。针对这个具体问题,解决方法是在java回调里 阅读全文
posted @ 2013-10-15 16:25 unionfind 阅读(844) 评论(0) 推荐(0) 编辑