Cocos2d之使用图集资源及TexturePacker的简单使用

时间:2024-04-07 13:11:56

在游戏开发中经常会使用到图集资源,然而可能有小部分读者并不知道为什么要使用图集资源或者如何制作图集资源。下面笔者对这方面进行简单的讲述。

图集资源
图集(Atlas)也称作 Sprite Sheet,是游戏开发中常见的一种美术资源。图集是通过专门的工具将多张图片合并成一张大图,并通过 plist 等格式的文件索引的资源。

下面举出一张图集使用的图片文件:
Cocos2d之使用图集资源及TexturePacker的简单使用
至于为什么要使用图集资源,则是因为在游戏中使用多张图片合成的图集作为美术资源,有以下2个方面的主要优势:
1、合成图集时会去除每张图片周围的空白区域,加上可以在整体上实施各种优化算法,合成图集后可以大大减少游戏包体和内存占用
2、多个 Sprite 如果渲染的是来自同一张图集的图片时,这些 Sprite 可以使用同一个渲染批次来处理,大大减少 CPU 的运算时间,提高运行效率。

对于制作图集图片,需要用到一个软件——TexturePacker
(笔者已经附上TexturePacker的官网下载地址,点击上面蓝色的TexturePacker字体链接即可)

以上面附上的图集图片为例,我们用TexturePacker来制作一个图集资源。
首先我们需要准备好一组原始图片
Cocos2d之使用图集资源及TexturePacker的简单使用

然后打开TexturePacker。TexturePacker界面如下图
Cocos2d之使用图集资源及TexturePacker的简单使用

点击菜单栏中部的‘Add Sprites’选项
Cocos2d之使用图集资源及TexturePacker的简单使用

然后会弹出一个窗口,选择需要合并的图片,选择好之后点击‘打开’
Cocos2d之使用图集资源及TexturePacker的简单使用

然后在TexturePacker界面左侧的Sprites栏会出现选择好的图片信息
Cocos2d之使用图集资源及TexturePacker的简单使用

接下来就是输入要创建的图集资源的名称。图集资源名称有两个,一个是Data file,一个是Texture file。Data file存储的是plist格式,Texture file存储的是png格式。plist是图集资源的存储的捆绑信息,用于cococs的调用;png是图片合成后的图像。
Data file文件名称需要以.plist结尾,例如:resource.plist
Texture file文件名称需要以.png结尾。例如:resource.png
在文件名前面可以添加文件存储的路径。笔者是把路径设置到存储原始图片的文件夹下的。
Cocos2d之使用图集资源及TexturePacker的简单使用
Cocos2d之使用图集资源及TexturePacker的简单使用
Cocos2d之使用图集资源及TexturePacker的简单使用

在名称设置完成后,点击菜单栏中间的‘Publish sprite sheet’选项
Cocos2d之使用图集资源及TexturePacker的简单使用

然后会弹出一个窗口,点击‘ok’就能生成图集资源响应的plist格式文件和png格式文件
Cocos2d之使用图集资源及TexturePacker的简单使用

然后在存储的路径下就能找到生成的文件了
Cocos2d之使用图集资源及TexturePacker的简单使用