使用TexturePacker生成png和plist,在Cocos2dx中使用plist和png
来源:互联网 发布:hadoop windows版本 编辑:程序博客网 时间:2024/04/26 22:34
使用TexturePacker生成png和plist,在Cocos2dx中使用plist和png
本文转载:
http://blog.csdn.net/handz_cpp/article/details/16112683
http://blog.csdn.net/song_hui_xiang/article/details/9316195
TexturePacker这个词从字面来说就是Texture(纹理) + Packer(打包)。它是一款把若干资源图片拼接为一张大图的工具。
官方网址:http://www.codeandweb.com/texturepacker
手机游戏开发中,为了提高图片渲染性能,经常需要将小图片合并成一张大图进行渲染。如果手工来做的话就非常耗时。TexturePacker就是一款非常不错方便的处理工具。TexturePacker虽然非常优秀,但不是免费的。
使用TexturePacker最主要的好处是,我们做的游戏最终要运行在Android手机或者苹果手机上,而Android或者ios系统使用的是OpenGL ES来渲染。所以我们要针对OpenGL ES来进行优化。内存方面,OpenGL ES纹理要求宽和高都是2的n次幂的倍数。想一想,如果图片的宽为33,而高为65,那么图片加载到内存后的大小为多少?考虑到宽和高都是2的n次幂,所以加载到内存后的大小是64*128。所以我们可以考虑将小的图片拼成到的图片,然后加载。渲染速度方面,OpenGL ES要求切换的纹理少,所以将图片拼成大图片,这样就减少了纹理的切换。所以使用TexturePacker是很有必要的。
使用TexturePacker生成图片和plist文件
TexturePacker可以直接选定一个文件夹,将里面的小图片生成一个大图片,并输出plist文件的工具。使用该工具,合图就非常简单了。
下面是使用流程(截图):很简单的,只需要的注意以下几点就可以了。。。
第一部:点击Add Sprites按钮添加图片资源 如图:
第二部:图片资源导进来之后只需要做些简单设置设置 如下图
根据你的图片资源大小来选择合适的 Max size W/H
第三部:导出生成 plist 和 .pvr.ccz 文件 点击Publish按钮如图:
然后把 plist 和 .pvr.ccz 两个文件导入项目就OK啦!!!
在Cocos2dx中使用上述生成的图片和plist
CCSpriteFrameCache *cache=CCSpriteFrameCache::sharedSpriteFrameCache(); cache->addSpriteFramesWithFile("grossini_dance_all.plist","grossini_dance_all.png"); //数组长度初始化为4,根据动画的总帧数初始化 CCArray *splitAniframe = CCArray::createWithCapacity(4); CCSpriteFrame *frame; char *frameNameChar = new char[20]; for(int i = 1;i<= 4;i++) { //下面的名字为打包前的每张图片的名字,加载plist文件很方便的一点就是可以根据打包前的图片名字直接访问到该图片 sprintf(frameNameChar, "grossini_dance_%d.png",i); frame = CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName(frameNameChar); splitAniframe->addObject(frame); } //根据帧序列创建动画(第二个参数为每帧之间的间隔时长) CCAnimation *splitAnimation=CCAnimation::createWithSpriteFrames(splitAniframe,0.2f); //根据动画创建动画动作 CCAnimate *splitAnimate=CCAnimate::create(splitAnimation); CCSprite *testSprite = CCSprite::create(); //让精灵执行该动画动作,并且是无限循环 testSprite->runAction(CCRepeatForever::create(splitAnimate)); testSprite->setPosition(ccp(200,200)); addChild(testSprite);
- 使用TexturePacker生成png和plist,在Cocos2dx中使用plist和png
- 使用TexturePacker生成png和plist,在Cocos2dx中使用plist和png
- TexturePacker资源图片拼接工具生成plist和png
- Cocos2dx使用 TexturePacker导出的.plist
- Cocos2dx使用 TexturePacker导出的.plist
- Cocos2dx使用 TexturePacker导出的.plist
- Cocos2dx使用 TexturePacker导出的.plist
- 把plist和png大图还原成小图
- cocos2dx 使用plist生成动画
- Cocos2d使用TexturePacker工具打包生成plist和pvr.ccz文件方法总结
- Cocos2d使用TexturePacker工具打包生成plist和pvr.ccz文件方法总结
- 【cocos2d-x 3】关于plist和TexturePacker的简单使用
- 将texturepacker生成的png和xml资源反向生成小图供unity使用
- CocoStudio生成的json和plist还有合成的png的读法问题解决方法
- 通过PNG 和相应的PLIST文件得到小文件
- cocos2d-x中读取plist文件和集成的png图片
- 【收集】cocos2dx中加载使用plist文件
- TexturePacker使用方法及免费申请方法(附带cocos2d中帧动画使用和plist文件解析)
- 防射变换组合 & xib中显示 UIRefreshController 控件
- Android WebView与javaScript之间的交互
- jmeter使用--6、命令行运行jmeter脚本
- 500 Lines or Less——可视化编程工具(Blockcode)
- (MyStudy:一)三级缓存:首先是内存-文件(外存)-网络三级缓存机制。
- 使用TexturePacker生成png和plist,在Cocos2dx中使用plist和png
- 如何对学者按照其在领域内的权威性进行排序
- 曝国安苏宁争夺威尔士当红前锋 开价500万镑年薪
- c++ primer学习(一)类型
- Android属性动画完全解析(上),初识属性动画的基本用法
- 小型互联网公司内部监控解决方案
- Oracle 中的 TO_DATE 和 TO_CHAR 函数 日期处理
- STM —— 软件事务性内存
- 曝国安苏宁争夺威尔士当红前锋 开价500万镑年薪