cocos2d-x ——用精灵文件创建一个动画
2013-10-29 15:51
471 查看
动画都是由一帧一帧连接而成的,有了动画的每一帧之后,我们需要把每一帧添加到CCAnimation中,CCAnimation相当于是一个容器,里面按我们添加帧的顺序,将我们的每一帧都储存好,并且定义了各帧之间的延时,还给每帧起了名字,我们可以通过动画的名字访问特定的帧。将CCAnimation封装成一个CCAnimate。 CCAnimate可以被我们的精灵当做一个动作执行。
bool HelloWorld::init()
{
//////////////////////////////
// 1. super init first
if ( !CCLayer::init() )
{
return
false;
}
//生成一个精灵,动画实际上是该精灵的一种动作。//是动同的第一帖
CCSprite *spr=CCSprite::create("crop1.png");
spr->setPosition(ccp(300,
300));
addChild(spr);
//创建动画动作
CCAnimation *animation=CCAnimation::create();
//将每帖图放入动画类对象中
for (int i=0; i<4;
i++)//将四个图片加到animation
里面
{
char str[100];
sprintf(str, "crop%d.png",i+1);
animation->addSpriteFrameWithFileName(str);//用文件名添加精灵帖。
}
//设置帧间隔时间
,此参数必须设置,无此参数动画不会播放。 必须的要。
animation->setDelayPerUnit(0.01f);
//动画播放完毕后,帧序是否重设为默认第一帖。
animation->setRestoreOriginalFrame(true);//如果是true会停在第一帧
//设置循环次数,-1代表无限循环。
animation->setLoops(-1);
//形成动画效果
CCFiniteTimeAction *animate=CCAnimate::create(animation);
spr->runAction(animate);
return true;
}
bool HelloWorld::init()
{
//////////////////////////////
// 1. super init first
if ( !CCLayer::init() )
{
return
false;
}
//生成一个精灵,动画实际上是该精灵的一种动作。//是动同的第一帖
CCSprite *spr=CCSprite::create("crop1.png");
spr->setPosition(ccp(300,
300));
addChild(spr);
//创建动画动作
CCAnimation *animation=CCAnimation::create();
//将每帖图放入动画类对象中
for (int i=0; i<4;
i++)//将四个图片加到animation
里面
{
char str[100];
sprintf(str, "crop%d.png",i+1);
animation->addSpriteFrameWithFileName(str);//用文件名添加精灵帖。
}
//设置帧间隔时间
,此参数必须设置,无此参数动画不会播放。 必须的要。
animation->setDelayPerUnit(0.01f);
//动画播放完毕后,帧序是否重设为默认第一帖。
animation->setRestoreOriginalFrame(true);//如果是true会停在第一帧
//设置循环次数,-1代表无限循环。
animation->setLoops(-1);
//形成动画效果
CCFiniteTimeAction *animate=CCAnimate::create(animation);
spr->runAction(animate);
return true;
}
相关文章推荐
- Cocos2D_X中的文本操作(LibJson)
- cocos2d-x中文文档和例子程序
- cocos2dx 坐标系 -转
- cocos2d-x 控制台输出日志
- cocos2d-x 控制台输出日志
- 【cocos2d-x 大型ARPG手游研发----地图活起来了】
- cocos2d-x中CCArray里面CCARRAY_FOREACH的用法
- cocos2d-X搭建环境,安装模版new新项目报脚本错误的解决办法
- cocos2d-x 通过python模板方式新建支持lua的工程
- cocos2d-x——CCCallFunc家族例子
- Cocos2d-x--开发参考资料
- cocos2d部分函数
- cocos2d权威指南部分摘录
- cocos2d-x场景中的层(CCLayer)及其触摸消息响应(转)
- 【Cocos2d-x游戏引擎开发笔记(6)】触屏事件与多媒体 (转)
- cocos2d-x——CCCallFunc家族
- Cocos2dx隐藏iOS7状态栏】通过添加Plist Key隐藏iOS7状态栏
- Cocos2dx隐藏iOS7状态栏】通过添加Plist Key隐藏iOS7状态栏
- cocos2d-x——CCActionInterval(延时动作)例子
- cocos2d-x——(CCSpeed)可调整速度动作