一个基于Unity的Plist解析工具——TextureUnpacker

一、前言

拆解plist大图是对已有项目进行学习(换皮)的必备手段!

在做这个工具之前,我也曾在网上查找过有没有现成的东西,以免重复造轮子。结果发现,有很多用python脚本来做的(不方便,用之前还要搭环境),也有一些界面版的,或是版本太旧(不能拆解新版本texturepacker打出来的图集),或是功能不全(只能简单拆解,无法还原)。更有的竟然挂在淘宝上售卖。。于是就做了这个工具。写核心代码耗时业余时间近一周。

二、技术选型

基于 Unity 2018.2.11f1 (64-bit)。能确定低于5.6不能运行。

为什么选择unity来做?有以下几个原因:

1、大多数想要拆图的人,都是游戏从业者,熟悉Unity的有不少,便于开源。

2、有界面,为实现更好的界面提供了可能。(目前还比较丑)

3、为跨平台提供了可能。(目前只支持发布到windows下使用)

三、核心代码讲解

请移步 Plist解析(拆分大图为小图)的核心算法讲解

四、开源地址

点这里,github地址 | 欢迎 star 和 fork 。

提示:对于不同类型plist的处理,扩展起来非常方便,只需要继承Loader,并按照plist的结构重写格式化数据的方法即可。

五、下载地址

虽然开源,但可能很多人还是希望拿来即用。

windows:textureUnpacker

六、注意

若plist中小图的offset均为(0, 0),说明可能在合图时使用的是crop模式(即,直接丢弃了四周的透明像素。),这时是无法进行还原的(即,还原和裁剪的结果是一样的)。注意区分texturepacker中trim和crop的区别。

如果拆图出错,又不想参与开源的,请留言给我,我会尽力帮你解决(目前扩展处理不同类型的plist较容易)。

七、效果演示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值