这两天研究cocoStudio因为项目要用到换装系统,需要骨骼动画来实现。但是官方也没有文档,只有自己慢慢摸索,朕尼玛纠结啊~
废话不多说。
首先告诉大家一个消息cocosStudio不支持2.1.2以下的版本,像我一样使用2.0.4的人可能要升级版本了~
好了,更新了版本之后。
去cocoStudio官方下载Armature项目代码 这个是vs上的项目,我用的是xcode~所以没办法直接跑起来
看看如何使用吧,首先建一个支持box2d的cocos2d-x项目~
然后导入外部库 就是Armature目录下的CSArmature文件夹~就可以使用了
把你们美工生产的 json、png、plist三个文件导入项目后
代码部分
首先要在.h文件
#include "CSArmature.h"
#include "CSArmatureDataManager.h"
#include "sigslot.h"
#include "CSBatchNode.h"
using namespace cs;
然后在cpp文件里,加载你动画所依赖的文件
cs::ArmatureDataManager::sharedArmatureDataManager()->addArmatureFileInfo("NewProject","", "NewProject0.png","NewProject0.plist", "NewProject.json");
如果你的动作依赖多个png和plist文件就这样写
cs::ArmatureDataManager::sharedArmatureDataManager()->addArmatureFileInfo("NewProject", "", "NewProject0.png","NewProject0.plist", "NewProject.json");
cs::ArmatureDataManager::sharedArmatureDataManager()->addArmatureFileInfo("NewProject", "", "NewProject1.png","NewProject1.plist", "NewProject.json");
然后就是绘制到当前图层
cs::Armature *armature1 =NULL;
armature1 =cs::Armature::create("NewProject");//读取Armature_data
armature1->getAnimation()->playByIndex(0); //播放第几个动作
armature1->setPosition(VisibleRect::center());
addChild(armature1);