加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

cocos2d-x-- spritesheet plist文件格式解析

发布时间:2020-12-14 19:49:15 所属栏目:百科 来源:网络整理
导读:1.spritesheet的plist文件中字段的含义 plist文件是游戏开发中将一些小图合并成一张大图的时候生成的配置文件,从大图中获取小图需要对应plist文件中的信息,如上图中,game.png是小图合成后的大图,game.plist是对应的plist文件。 plist文件包括的信息如下图

1.spritesheet的plist文件中字段的含义


plist文件是游戏开发中将一些小图合并成一张大图的时候生成的配置文件,从大图中获取小图需要对应plist文件中的信息,如上图中,game.png是小图合成后的大图,game.plist是对应的plist文件。

plist文件包括的信息如下图:


plist中各字段的含义如下:

frame:小图在大图中的位置(相对于大图左上角)和尺寸,程序会根据这个来做剪辑。

rotated:如果值为true,图片顺时针旋转90度。

sourceSize:小图原本的大小,也是sprite的大小。

sourceColorRect:小图在sourceSize这个方形的位置和尺寸(以左上角来算),这一部分应该是去掉了原图中透明的部分后的那部分。

offset:在合成大图的过程中texturePackage会把原图透明的部分删除,offset是这张新的图片的中心点相对于原图的中心点(以sourceSize这个方形的中心点)的偏移,这个是以cocos2d的坐标系为准的,y轴向上为正,x轴向右为正。

如上图中图片button-jiabei.png中,offset=(1,-2) ; sourceColorRect={ (4,4),(106,59) }; sourceSize = ( 112,63);

sourceSize的中心点是( 112 / 2,63 / 2 )= ( 56,31.5 )

sourceColorRect的中心点是 ( 4,4 )+ ( 106 / 2,59 / 2 ) = ( 57,33.5 )

所以sourceColorRect的中心点相对于sourceSize的中心点是x方向是向右偏移1,为正,y方向是向下偏移2,为负。所以offset = ( 1,-2 ).


2 cocos2d-x在哪些地方使用了plist格式?

1)图像纹理定义文件,如1中的plist文件
将多个纹理拼在一张大图上,使用CCSpriteFrameCache可以载入这类plist文件;

2)Label纹理定义文件

作用与图像纹理定义文件类似,只不过处理的是自己,面向CCLabelAtlas

3)帧动画定义定义一个或多个动画中,使用哪些纹理,使用CCAnimationCache可以载入这类plist文件;


3.生成plist文件的工具

对于纹理定义文件来说,它的作用是如何在大图中找到碎图的坐标。因此很多拼合碎图的软件可以在拼合碎图的同时生成plist文件。

·TexturePacker是所有平台上最好用的工具了;

·ZwoptexMACOnly的软件;

·SpritePackerWindowsOnly的软件。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读