cocos2dx进阶学习之CCBI文件
Posted 尹成
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cocos2dx进阶学习之CCBI文件相关的知识,希望对你有一定的参考价值。
在马里奥这个游戏里,我们用到了几个ccbi文件,比如蘑菇怪,马里奥等,下面是加载马里奥代码
从这个代码可以看出,马里奥不是个精灵,是一个CCNode对象,是CCBReader对象从一个文件读出来的CCNode,那mario.ccbi究竟是什么文件呢?
ccbi文件是cocosbuilder软件制作的场景资源,现在可以包含动画,像mario.ccbi就包含了一些动画在里面。
资源的加载:
ccbi资源的加载需要用CCBReader对象,创建CCBReader对象又需要CCNodeLoadLibrary对象,所以综合起来代码是:
1)先创建CCNodeLoadLibrary对象
2)通过CCNodeLoadLibrary对象创建CCBReader对象
3)根据CCBReader对象去加载ccbi文件
将来还需要通过CCBReader对象去播放动画,因此在这个设计里,CCBReader对象被定义为成员变量保存,能长期使用。
播放动画:
当马里奥移动时,手臂会摆动,这个时候需要让该CCNode对象去播放动画,播放动画的代码如下:
//根据状态播放动画
switch(m_eCurMarioLevel)
case enMarioLevelSmall:
m_pCcbReader->getAnimationManager()->runAnimationsForSequenceNamed(_CCB_MARIO_SMALL_HOLD_);
break;
case enMarioLevelBig:
m_pCcbReader->getAnimationManager()->runAnimationsForSequenceNamed(_CCB_MARIO_BIG_HOLD_);
break;
case enMarioLevelMax:
m_pCcbReader->getAnimationManager()->runAnimationsForSequenceNamed(_CCB_MARIO_MAX_HOLD_);
break;
根据马里奥的状态来播放不同的动画。
以上是关于cocos2dx进阶学习之CCBI文件的主要内容,如果未能解决你的问题,请参考以下文章