或许有人会说,cocos2dx中直接帧动画就好了用什么GIF。 原由是为游戏内部要用到第三方平台的头像,而第三方平台的头像大多都是用到Gif,因此才会有了这个需求html
查了各类文档都没找到。可是毋庸置疑的是,大多数解析库都是依赖gif_lib这个库的。 偶然间看到了android使用的skia库的gif解析android
参考skia的代码基础上,有了后来的gifforcocos2dx 的库c++
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代码地址git
转载请注明出处(http://www.cnblogs.com/boliu/p/4048096.html)
github