关闭

Cocos2d使用TexturePacker工具打包生成plist和pvr.ccz文件方法总结

1600人阅读 评论(1) 收藏 举报
分类:

我们用TexturePacker工具打包生成了plist和pvr.ccz文件,那么下一步,我们就该获取plist中的信息了。
Cocos2d中SpriteFrameCache通常用来处理plist文件,并能与SpriteBatchNode结合使用来达到批处理渲染精灵的目的。

  • 精灵帧缓存类SpriteFrameCache
    精灵帧缓存类SpriteFrameCache 用来存储精灵帧,缓存精灵帧有助于提高程序的效率。 SpriteFrameCache是一个单例模式,不属于某个精灵,是所有精灵共享使用的。

  • 精灵批处理节点SpriteBatchNode
    当你需要渲染显示两个或两个以上相同的精灵时,如果逐个渲染精灵,每一次渲染都会调用 OpenGL ES 的 draw 函数,这样做自然降低了渲染效率。不过幸好,Cocos2d为开发者提供了一个SpriteBatchNode类,它能一次渲染多个精灵。并可以用来批处理这些精灵,比如我们游戏中的寿司精灵。用SpriteBatchNode作为父层来创建子精灵,并且使用它来管理精灵类,这样可以提高程序的效率。

在init()方法中调用SpriteFrameCache的addSpriteFramesWithFile方法,传入plist文件名称,它会从plist属性列表文件的元数据部分获取各个纹理的纹理名,载入到纹理缓存中。并解析属性列表文件,使用SpriteFrame对象来内部地跟踪所有精灵的信息。

在Cocos2d中高效使用图片总结:

使用TexturePacker打包图片成pvr.ccz文件,使用SpriteBatchNode优化绘制,使用SpriteFrameCache缓存读取,使用spriteWithFrameName获取单张图片。

0
0
查看评论

cocos2d-x 中的pvr.ccz压缩图片的使用方法

前几天打开了保卫萝卜的游戏,看到了其中有使用plist 和 *.pvr。czz文件。 在网上查了一下说pvr。czz不能用图片名调用,测试了一下发现可以用,写下代码: 1.首先将texturepacker 软件生产的文件,111.pliost 和111.pvr.czz文件拷贝到资源文件夹...
  • liaowenfeng
  • liaowenfeng
  • 2014-05-02 11:49
  • 7763

Cocos2d使用TexturePacker工具打包生成plist和pvr.ccz文件方法总结

我们用TexturePacker工具打包生成了plist和pvr.ccz文件,那么下一步,我们就该获取plist中的信息了。 Cocos2d中SpriteFrameCache通常用来处理plist文件,并能与SpriteBatchNode结合使用来达到批处理渲染精灵的目的。 精灵帧缓存类...
  • q529560107
  • q529560107
  • 2016-12-29 23:02
  • 418

TexturePacker 图片打包工具讲解与使用并且批处理打多包以及资源加密

TexturePacker这个词从字面来说就是Texture(纹理) + Packer(打包)。它是一款把若干资源图片拼接为一张大图的工具。 官方网址:点击打开链接 手机游戏开发中,为了提高图片渲染性能,经常需要将小图片合并成一张大图进行渲染。如果手工来做的话就非常耗时。TexturePacke...
  • song_hui_xiang
  • song_hui_xiang
  • 2013-07-13 00:23
  • 19845

使用TexturePacker生成png和plist,在Cocos2dx中使用plist和png

使用TexturePacker生成png和plist,在Cocos2dx中使用plist和png 本文转载: http://blog.csdn.net/handz_cpp/article/details/16112683 http://blog.csdn.net/song_hui_xiang/...
  • AD_118
  • AD_118
  • 2016-07-13 14:59
  • 2968

Cocos2d使用TexturePacker工具打包生成plist和pvr.ccz文件方法总结

我们用TexturePacker工具打包生成了plist和pvr.ccz文件,那么下一步,我们就该获取plist中的信息了。 Cocos2d中SpriteFrameCache通常用来处理plist文件,并能与SpriteBatchNode结合使用来达到批处理渲染精灵的目的。 精灵帧缓...
  • leansmall
  • leansmall
  • 2015-07-11 09:06
  • 1600

Cocos2d-x随机-通过pvr.ccz和plist文件创建动画

直接上代码~~~~ void HelloWorld::CreateAnimationWithPlist() { CCSize WinSize = CCDirector::sharedDirector()->getWinSize(); //确定文件名 CCString ...
  • u010170012
  • u010170012
  • 2013-04-22 14:44
  • 1758

将TexturePacker制作的.pvr.ccz和.plist文件还原为多个原图

第一步,将".pvr.ccz"文件改为“.png”格式 pvr转png.batrem path " "里面内容替换为TexturePacker的安装路径,将bat文件放在图片文件夹直接运行就可以了 @ech off path %path%;"D:\...
  • huang_0430
  • huang_0430
  • 2017-05-20 09:54
  • 624

cocos2d-x3.2总结(二)使用TexturePacker工具创建和使用纹理图集

游戏进行过程中通常需要加载多张图片。如果每次只加载一张,则需要加载多次,那么这样就需要很长的时间和比较多的内存。如果我们把需要加载的多张图片整合到一张图片,则需要加载一次,那么这样仅花费一次的时间。而且内存是一次分配不是多次分散分配,没有内存碎片,那么内存的使用也比较高效。   ...
  • cbbbc
  • cbbbc
  • 2014-08-01 11:02
  • 1450

png转pvr.ccz

@echo off path %path%;"C:\Program Files\CodeAndWeb\TexturePacker\bin" for /f "usebackq tokens=*" %%d in (`dir /s /b *.pn...
  • lansong4
  • lansong4
  • 2016-05-19 15:56
  • 1331

iOS和android游戏纹理优化和内存优化(cocos2d-x)

(未完成) 1、2d游戏最占内存的无疑是图片资源。 2、cocos2d-x不同平台读取纹理的机制不同。ios下面使用CGImage,android和windows下是直接调用png库。我测试了下,使用png库直接读取png会比CGImage还要节约1mb左右内存(图片所占内存4mb)但是速度要比...
  • langresser
  • langresser
  • 2012-12-24 22:01
  • 30557
    个人资料
    • 访问:484361次
    • 积分:7853
    • 等级:
    • 排名:第3203名
    • 原创:222篇
    • 转载:432篇
    • 译文:0篇
    • 评论:9条