Cocos2dx 学习笔记31 cocos2dx 播放gif

来源:互联网 发布:name域名注册量 编辑:程序博客网 时间:2024/06/12 20:55

原文出处:http://www.cnblogs.com/boliu/p/4048096.html

起因

或许有人会说,cocos2dx中直接帧动画就行了用什么GIF。 起因是为游戏内部要用到第三方平台的头像,而第三方平台的头像大多都是用到Gif,所以才会有了这个需求

过程

查了各种文档都没找到。但是毋庸置疑的是,大多数解析库都是依赖gif_lib这个库的。 偶然间看到了android使用的skia库的gif解析

参考skia的代码基础上,有了后来的gifforcocos2dx 的库

示例

std::string name = "g2.gif";name = CCFileUtils::sharedFileUtils()->fullPathForFilename(name.c_str());GifBase *gif = InstantGif::create(name);//这种方式的会一边播放一边从数据中解析帧gif->setAnchorPoint(ccp(0,0));gif->setPosition(ccp(0,0));this->addChild(gif);//CacheGif: 这种方式会在开始的时候一次性解析完,并放入缓存中。这种如果gif帧数过多耗时较长,且暂用内存过大。但是相对少的时候,播放要比前一种流畅gif = CacheGif::create(name);gif->setPosition(ccp(500,0));gif->setScale(2);this->addChild(gif);//创建出来之后,可以像普通Sprite一样使用

github代码地址

0 0
原创粉丝点击