cocos2d-3.x 创建动画
1.多文件帧序列动画
TrademarkAnimation.h
#ifndef __TRADEMARK_ANIMATION_H__
#define __TRADEMARK_ANIMATION_H__
#include "cocos2d.h"
USING_NS_CC; class TrademarkAnimation : public cocos2d::CCLayer{
private:
Animate* createAnimate();
public :
~TrademarkAnimation();
virtual bool init(); CREATE_FUNC(TrademarkAnimation);
};
#endif
TrademarkAnimation.cpp
#include "TrademarkAnimation.h" bool TrademarkAnimation::init(){
if(!CCLayer::init())return false;
Sprite* runSp=Sprite::create();
runSp->setPosition(Point(,));
this->addChild(runSp); runSp->runAction(createAnimate());
return true;
} Animate* TrademarkAnimation::createAnimate(){
int totalFrames=;
SpriteFrame* frame=NULL;
Vector<SpriteFrame*> frameVec; for(int i=;i<=totalFrames;i++){
//tdmark/tdmark0001.png....tdmark/tdmark0319.png
frame=SpriteFrame::create(StringUtils::format("tdmark/tdmark%04d.png",i),Rect(,,,));
frameVec.pushBack(frame);
} Animation* animation=Animation::createWithSpriteFrames(frameVec);
animation->setLoops(-);
animation->setDelayPerUnit(0.04f);//: 1/帧频 Animate* action=Animate::create(animation);
return action;
} TrademarkAnimation::~TrademarkAnimation(){ }
2.plist文件创建动画
#include "TrademarkAnimation.h" bool TrademarkAnimation::init(){
if(!CCLayer::init())return false; Size size=Director::getInstance()->getVisibleSize();
Sprite* runSp=Sprite::create();
runSp->setPosition(size.width*0.5,size.height*0.5);
this->addChild(runSp);
runSp->runAction(createAnimate());
return true;
} Animate* TrademarkAnimation::createAnimate(){
//如果flash出图,设置:
//Algorithm: Basic/MaxRects
//Data format: cocos2D v2
//Trim: false
//Stack frames: false
SpriteFrameCache* frameCache=SpriteFrameCache::getInstance();
frameCache->addSpriteFramesWithFile("trademark.plist","trademark.png"); //或 frameCache->addSpriteFramesWithFile("trademark.plist"); int totalFrames=;
SpriteFrame* frame=NULL;
Vector<SpriteFrame*> frameVec;
for(int i=;i<totalFrames;i++){
//T1 instance 10000.......T1 instance 10318
frame=frameCache->getSpriteFrameByName(StringUtils::format("T1 instance 1%04d",i));
frameVec.pushBack(frame);
} Animation* animation=Animation::createWithSpriteFrames(frameVec);
animation->setLoops(-);
animation->setDelayPerUnit(0.04f); Animate* action=Animate::create(animation);
return action;
} TrademarkAnimation::~TrademarkAnimation(){ }
cocos2d-3.x 创建动画的更多相关文章
- Cocos2d-X使用CCAnimation创建动画
动画在游戏中是很常见的 程序1:创建一个简单的动画 首先须要在project文件夹下的Resource文件夹中放一张有各种不同动作的图片 在程序中加入以下的代码 #include "Anim ...
- cocos2dx中创建动画的三种方法
1.最最原始的方法,先创建动画帧,再创建动画打包(animation),再创建动画(animate) 第一步: 创建动画帧:CCSpriteFrame,依赖于原始的资源图片(xx.png,xx.jpg ...
- wpf 创建动画三种方式
动画类型 : 故事版,CompositionTarget,DispachTime 那么到此,三种动态创建动画的方法都已经详细介绍过了,大家可能会有种感觉,比较钟情于第一种WPF/Silverlight ...
- 《Programming WPF》翻译 第8章 5.创建动画过程
原文:<Programming WPF>翻译 第8章 5.创建动画过程 所有在这章使用xaml举例说明的技术,都可以在代码中使用,正如你希望的.可是,代码可以使用动画在某种程度上不可能在x ...
- UWP 创建动画的极简方式 — LottieUWP
提到 UWP 中创建动画,第一个想到的大多都是 StoryBoard.因为 UWP 和 WPF 的界面都是基于 XAML 语言的,所以实现 StoryBoard 会非常方便. 来看一个简单的 Stor ...
- WPF/WP/Silverlight/Metro App代码创建动画的思路
在2010年之前,我都是用Blend创建动画,添加触发器实现自动动画,后来写成代码创建的方式.如今Blend已经集成到Visual Studio安装镜像中了,最新的VS2015安装,Blend的操作界 ...
- Cocos2D iOS之旅:如何写一个敲地鼠游戏(九):创建动画
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...
- cocos2d环境及创建一个自己的项目
一. mac环境: 1.在终端操作,准备好mac系统下的sdk,adt,ndk,ant文件,放在自己的目录中 2.进入mac终端,输入: vim ~/.bash_profile 然后回 ...
- [UE4]创建动画的3中方法
一.基于现有动画的骨骼,从头开始创建一个全新的动画.(不推荐) 选中左边的骨骼节点做旋转变化. 调整完成了别忘记点击添加“Key”以创建一个关键帧,然后再保存. 二.基于当前动画的姿势创建一个动画.( ...
随机推荐
- 快速排序算法C#实现
最近想把几大经典的排序算法系统的整理过一遍,写下笔记,算是复习吧!! 1.快速排序. 快速排序由C. A. R. Hoare在1962年提出.它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部 ...
- Pos终端中的主密钥、工作密钥、pin密钥、mac密钥
下面介绍一下加密机中最主要的几种密钥: 1.加密机主密钥(MK) 加密机主密钥(Master Key - MK)是存入在HSM机内的由三个成分合成的一对最上层密钥.在HSM机器以外的地方不会以明文形式 ...
- C++ 处理 utf-8
类似"abc汉字"这样的字符串是以utf-8编码; C++ 的 cout执行的操作是把参数发送给stdout,因此如果终端支持utf-8, 汉字可以使用cout打印: 比较好的办法 ...
- C# 动态对象(dynamic)的用法
说到正确用法,那么首先应该指出一个错误用法: 常有人会拿var这个关键字来和dynamic做比较.实际上,var和dynamic完全是两个概念,根本不应该放在一起做比较.var实际上是编译期抛给我们的 ...
- Uva 11889 Benefit (lcm与gcd)
题意:给你两个数,a,c,求出 lcm(a,b)==c 时的 b 的最小值 思路:我们知道一个性质 gcd(a,b)*lcm(a,b) = a*b 由此我们可以得到 b = gcd(a,b)*lcm( ...
- ECS活动真实IP (前端存在SLB)
log_format main 'realip:$http_x_forwarded_for slbip:$remote_addr-$remote_user [$time_local] "$r ...
- inux按照CPU、内存、磁盘IO、网络性能监测
http://my.oschina.net/chape/blog/159640 系统优化是一项复杂.繁琐.长期的工作,优化前需要监测.采集.测试.评估,优化后也需要测试.采集.评估.监测,而且是一个长 ...
- 给Cygwin重新安装curl
之前已经安装过了cygwin了,但是重装了系统了. 不过发现cygwin倒是还可以继续使用. 现在想要使用其中的curl工具. 但是却在cygwin安装目录 E:\dev_install_root\c ...
- could not resolve property问题(ssh框架)
could not resolve property不能解析属性问题, 刚开始把hql语句中的"from User user where user.user_name = '"+u ...
- css2和CSS3的background属性简写
1.css2:background:background-color || url("") || no-repeat || scroll || 0 0; css3: backg ...