cocos2d-x学习笔记-帧动画
来源:互联网 发布:南朝和北朝的关系知乎 编辑:程序博客网 时间:2024/04/28 20:28
我们首先用TP将我们的资源图片压缩成一个大图片(包含plist和png文件),然后就把这张大图的这两个文件包含在我们的程序文件里,这样我们就可以做有意思的动画了。
现在介绍一些相关类:
为了方便地记录纹理的显示信息,Cocos2d-x提供了框帧类CCSpriteFrame。一个框帧包含两个属性,纹理与区域。纹理指的是将要被显示的纹理,而区域指的是此纹理将要被显示的部分。一个框帧可以完整地描述精灵显示的内容,因此在动画中,我们使用框帧来表示每一帧的内容。
用CCAnimation描述一个动画,而精灵显示动画的动作则是一个CCAnimate对象。动画动作CCAnimate是精灵显示动画的动作,它由一个动画对象创建,并由精灵执行。
代码:
CCSize winSize = CCDirector::sharedDirector()->getWinSize();CCSpriteFrameCache* cache = CCSpriteFrameCache::sharedSpriteFrameCache();char strPlist[64] = {0};char strPng[64] = {0};sprintf(strPlist,"spritesheet.plist");sprintf(strPng,"spritesheet.png");cache->addSpriteFramesWithFile(strPlist,strPng);CCArray* animFrames = CCArray::array();animFrames->initWithCapacity(8); char str[64] = {0};CCSprite* sprite = CCSprite::create("bear1.png");sprite->setTag(1);sprite->setPosition(ccp(winSize.width/2,winSize.height/2));this->addChild(sprite); for(int i = 1; i <= 8; i++){sprintf(str, "bear%d.png",i);CCSpriteFrame* frame = cache->spriteFrameByName( str );animFrames->addObject(frame);}CCAnimation* animation = CCAnimation::animationWithSpriteFrames(animFrames,0.1f);CCRepeatForever* walkAction=CCRepeatForever::actionWithAction( CCAnimate::actionWithAnimation(animation)); sprite ->runAction(walkAction);animFrames->release();
- cocos2d-x学习笔记-帧动画
- cocos2d-x学习笔记-动画
- cocos2d-x学习笔记04:简单动画
- cocos2d-x学习笔记04:简单动画
- cocos2d-x学习笔记1:简单动画
- 【Cocos2d-x 3.0学习笔记】动作,动画
- 【Cocos2d-x 3.0学习笔记】动作,动画
- Cocos2d – x学习笔记[4] 动画
- [笔记] 创建Cocos2D-X的帧动画
- cocos2d-x初探学习笔记(22)--动画类
- cocos2d-x 菜鸟学习笔记五(精灵与动画)
- cocos2d-x学习笔记03——动画
- Cocos2d-X 学习笔记 13 cocos2dx骨骼动画
- cocos2d-x初探学习笔记(22)--动画类
- Cocos2d-x 帧动画
- cocos2d-x帧动画
- cocos2d-x 帧动画
- cocos2d-x学习 之 动画
- 此文胜过你听三年的培训课,最少省十万!
- 上篇日本人经营之道 二对情报保持高度敏感
- android系统定制项目展示
- 【如何防御黑客对window XP系统的入侵】
- spring MVC 小例子(spring3.0.5)
- cocos2d-x学习笔记-帧动画
- Multithreaded File I/O
- MySql与Java的时间类型
- DOM17---行颜色间隔显示并高亮
- 6.10.2013
- 《Android的设计与实现:卷1》试读地址
- DU 1755(全排+水题)
- java简介
- 微软发布SQL Server 2014预览版,展示内存数据库技术