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 创建动画的更多相关文章

  1. Cocos2d-X使用CCAnimation创建动画

    动画在游戏中是很常见的 程序1:创建一个简单的动画 首先须要在project文件夹下的Resource文件夹中放一张有各种不同动作的图片 在程序中加入以下的代码 #include "Anim ...

  2. cocos2dx中创建动画的三种方法

    1.最最原始的方法,先创建动画帧,再创建动画打包(animation),再创建动画(animate) 第一步: 创建动画帧:CCSpriteFrame,依赖于原始的资源图片(xx.png,xx.jpg ...

  3. wpf 创建动画三种方式

    动画类型 : 故事版,CompositionTarget,DispachTime 那么到此,三种动态创建动画的方法都已经详细介绍过了,大家可能会有种感觉,比较钟情于第一种WPF/Silverlight ...

  4. 《Programming WPF》翻译 第8章 5.创建动画过程

    原文:<Programming WPF>翻译 第8章 5.创建动画过程 所有在这章使用xaml举例说明的技术,都可以在代码中使用,正如你希望的.可是,代码可以使用动画在某种程度上不可能在x ...

  5. UWP 创建动画的极简方式 — LottieUWP

    提到 UWP 中创建动画,第一个想到的大多都是 StoryBoard.因为 UWP 和 WPF 的界面都是基于 XAML 语言的,所以实现 StoryBoard 会非常方便. 来看一个简单的 Stor ...

  6. WPF/WP/Silverlight/Metro App代码创建动画的思路

    在2010年之前,我都是用Blend创建动画,添加触发器实现自动动画,后来写成代码创建的方式.如今Blend已经集成到Visual Studio安装镜像中了,最新的VS2015安装,Blend的操作界 ...

  7. Cocos2D iOS之旅:如何写一个敲地鼠游戏(九):创建动画

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...

  8. cocos2d环境及创建一个自己的项目

    一. mac环境:     1.在终端操作,准备好mac系统下的sdk,adt,ndk,ant文件,放在自己的目录中     2.进入mac终端,输入: vim ~/.bash_profile 然后回 ...

  9. [UE4]创建动画的3中方法

    一.基于现有动画的骨骼,从头开始创建一个全新的动画.(不推荐) 选中左边的骨骼节点做旋转变化. 调整完成了别忘记点击添加“Key”以创建一个关键帧,然后再保存. 二.基于当前动画的姿势创建一个动画.( ...

随机推荐

  1. 分区数据库oracle自动分区

    首先声明,我是一个菜鸟.一下文章中出现技术误导情况盖不负责 oralce在linux下主动备份并删除5天前备份 导出脚本: export ORACLE_BASE=/opt/oracle         ...

  2. Mvc分页组件MvcSimplePager代码重构

    1 Mvc分页组件MvcSimplePager代码重构 1.1 Intro 1.2 MvcSimplePager 代码优化 1.3 MvcSimplePager 使用 1.4 End Mvc分页组件M ...

  3. TortoiseSVN历史版本安装及svn服务器搭建

    一.TortoiseSVN安装 1.TortoiseSVN下载 网址如下:https://tortoisesvn.net/downloads.html   进入客户端下载页面,根据你的电脑选择是64位 ...

  4. Java SE ——TCP协议网络编程(三)

    之前的代码中关闭了 socket 对象的输入流与输出流,但并没有关闭掉socket 对象,会造成服务器资源的浪费,应通过调用 socket 的 close() 方法来关闭当前的socket 对象. 因 ...

  5. ADO.NET初学习

    ①System.Data  → DataTable,DataSet,DataRow,DataColumn,DataRelation,Constraint,DataColumnMapping,DataT ...

  6. Linux软件安装管理 - CentOS (三)

    1. 软件包管理简介 2. rpm命令管理(Redhat Package Manager) 3. yum在线安装 4. 源码包管理 4.1 源码包和RPM包的区别 4.1.1 区别 安装前:概念上的区 ...

  7. socket select()模型

    转载:http://www.cnblogs.com/xiangshancuizhu/archive/2012/10/05/2711882.html 由于socket recv()方法是阻塞式的,当有多 ...

  8. spring mvc @ResponseStatus 注解 注释返回中文乱码的问题

    前言 前文中讲到,使用@ResponseStatus注解,可以修饰一个异常类,在发生异常的时候返回指定的错误码和消息,在返回的 reason中包含中文的时候,就会出现中文乱码的问题 现象 reason ...

  9. js格式化时间为JSON格式 ajax提交 后台处理

    var effectRow = new Object();if ($('#grd_infos').datagrid('getChanges').length) {    var update = $( ...

  10. Servlet源码初探

    年底,公司的事情告一段落,就来捣鼓一下这个Servlet源码,为下一步的spingmvc源码初探做准备 1.Servlet接口 public interface Servlet { void init ...