本文汇总Cocos Studio新版本的用户手册、动画编辑器的使用、回调特性、帧动画编辑教程以及一些常见问题等。
0.用户手册
http://cocosstudio.org/helpv2.html#page=0
1.动画编辑、插事件帧
http://www.cocoachina.com/bbs/read.php?tid=274328
2.回调特性
参考:《Cocos Studio 2.0.5版本“回调特性“使用教程》
3.帧动画编辑教程(2.0.5开始支持)
讨论帖:http://www.cocoachina.com/bbs/read.php?tid-274227.html
4.Flash 目前编辑器不支持导入flash但有个插件可以从flash导出cocos studio2.0项目。
参考:《Cocos Studio v2.0 Flash插件 -- CocoStudioPlugin》
5.发布到IDE 、VS、XCODE选项灰色
可能:
1)新建项目时,没有选择生成2d-x工程。
2)脚本项目没有勾选使用IDE。
3)脚本项目没有勾选生成源码(发布到IDE可用,XCODE/VS不可用)
6. Cocos Studio 2.0版本的加载方式
使用Cocos Studio v2.0发布的CSB资源更换了加载方式,需要用CSLoader来加载。CSLoader在Cocos2d-x 3.3-RC0开始提供。
#include "ui/CocosGUI.h"//UI相关的头文件
#include"cocostudio/CocoStudio.h"//在CocosStudio.h 头文件中已经包含了Studio所需要的各个头文件(除CocosGUI)因此我们使用Studio仅需要包含他就可以
using namespace cocos2d;//CSLoader位于cocos2d命名空间。
using namespace cocostudio::timeline;//动画相关的类位于cocostuio::timeline当中
void myScene::initFunc()
{
//以下是加载相关的代码:
None *rootNode = CSLoader::createNode("MainScene.csb");//传入Studio2.x的资源路径
this->addChild(rootNode);//假设this是即将显示的scene
//加载动画:
ActionTimeline *action = CSLoader::createTimeline("MainScene.csb");
rootNode->runAction(action);//注!!!:同一个文件创建的节点只能使用同一个文件创建的动画。
//播放动画:
action->gotoFrameAndPlay(0,60,true);//从第0帧到60帧循环播放。还有其他重载函数,具体看源码。
//帧事件监听
action->setFrameEventCallFunc(CC_CALLBACK_1(myScene::onFrameEvent,this));
//关于CC_CALLBACK_1需要点C++11的基础才能知道是咋回事,这里只要照着写就行。想了解可以查下std::Bind
}
void myScene::onFrameEvent(Frame* frame)//固定的格式
{
EventFrame* evnt = dynamic_cast<EventFrame*>(frame);
if(!evnt)
return;
std::string str = evnt->getEvent();
if (str == "xxoo")
{
CCLOG("come on baby");
}
}
PS:不会看源码的码农不是好程序猿啊。经常有人求某个API接口,这东西查查头文件看接口名就能知道个大概啦。源码就是最权威的API文档啊有木有!!!
Cocos Studio 1.x学习资料请参考:http://www.cocoachina.com/bbs/read.php?tid-200192.html
Cocos引擎中文官网现面向广大开发者有奖征集优秀原创Cocos教程,奖品丰厚!详见:http://www.cocoachina.com/bbs/read.php?tid-274890.html