首先准备好资源文件,这里我采用的是用cocos引擎生成的实例项目(BattleScene)的资源,用cocos里面自带的cocos studio打开,如下所示:
那些csd文件则为动画的资源文件,点击播放按钮会发现精灵在运动。在HelloWorld类的init函数里面添加如下代码(注意该项目是用cocos一站式解决方案生成的,如果是用cocos命令生成的项目可能项目代码稍微有点不同,这种情况下注意加入头文件
#include “cocostudio/CocoStudio.h”
#include “ui/CocosGUI.h”)
bool HelloWorld::init()
{
//
// 1. super init first
if ( !Layer::init() )
{
return false;
}
auto director = CCDirector::getInstance();//获得导演的实例
auto size = director->getWinSize();//获得窗口大小
auto rootNode = CSLoader::createNode("captain_jack.csb");//创建该节点,注意文件后缀名为csb而不是csd
this->addChild(rootNode);
rootNode->setPosition(ccp(size.width/2, size.height/2));//设置位置
ActionTimeline* action = CSLoader::createTimeline("captain_jack.csb");//创建动画,该动画应该问上面创建节点里面的的,可以是captain_jack.csb本身,也可以是captain_jack.csb里面的子动画,如果该动画由子动画组成的话
rootNode->runAction(action);
action->gotoFrameAndPlay(0, 35, true);//从0~35帧循环播放动画
return true;
}