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文件的主要内容,如果未能解决你的问题,请参考以下文章

游戏人生,我的lua之旅:那些坑爹的CCBReaderLoad

大数据学习之Linux进阶02

python学习之函数学习进阶

python学习之函数学习进阶

python学习之函数进阶三

Hive学习之五 《Hive进阶—UDF操作案例》 详解