一开始我也是从网上下载的源码查看,里面用的图片是一整张,同时附带一个plist文件,打开plist文件查看,发现其实是图片里的每个小图片是对应的,格式如下:
成都创新互联专注于企业成都全网营销、网站重做改版、惠济网站定制设计、自适应品牌网站建设、H5高端网站建设、商城网站定制开发、集团公司官网建设、外贸营销网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为惠济等各大城市提供网站开发制作服务。但是不知道是怎么生成的,难道是自己手写的,不可能,而且为什么代码里可以这么用,是怎么识别的
后来找到了生成软件,而且iOS和android上之所以这么做,是有理由的:
http://www.frozax.com/blog/2011/12/why-how-pack-textures-ios-android/
这是应为我们做的游戏最终要运行在Android手机或者苹果手机上,而Android或者ios系统使用的是OpenGL ES来渲染。所以我们要针对OpenGL ES来进行优化。
内存方面,OpenGL ES纹理要求宽和高都是2的n次幂的倍数。想一想,如果图片的宽为33,而高为65,那么图片加载到内存后的大小为多少?考虑到宽和高都是2的n次幂,所以加载到内存后的大小是64*128。所以我们可以考虑将小的图片拼成到的图片,然后加载。
渲染速度方面,OpenGL ES要求切换的纹理少,所以将图片拼成大图片,这样就减少了纹理的切换。
软件下载地址:
http://www.codeandweb.com/texturepacker/start-download?os=mac
使用也很简单,如下图:
左侧指定好生成的plist文件名和最终保存的图片格式名后,就可以在cocos2d-x中使用了。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。