Cocos2dx 学习笔记31 cocos2dx 播放gif

前端之家收集整理的这篇文章主要介绍了Cocos2dx 学习笔记31 cocos2dx 播放gif前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

原文出处: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));
this->addChild(gif);

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

github代码地址

猜你在找的Cocos2d-x相关文章