第一步,先抠图,到网上随便找了个鬼剑天空套的gif图,解成png如下图
可惜这套图里没有主角受伤和死亡的动作,无所谓啦,英明神武的主角很NB的就是。
第二步,把这些图用texturepacker打包
但在这步前,要记住这写个png的编号,我特意把他们先拆分成文件夹就是这个目的。
1-8是1号攻击动作,9-20是2号攻击动作,21-30是3号攻击动作,待机是31-36号动作,奔跑是37-44号动作。
走路那个动作忒鸡肋了,就不做了,没啥用。
分完动作以后就该用Texturepacker打包了。这里需要普及一下知识,为何要用TP打包。OpenGL有个神奇的特性,它的数据结构存储的图片只能是2的幂次方,也就是说,129*127大小的图片,实际占用的内存空间是256*128,但很多的图片都是非常不规则的,例如这套鬼剑的PNG,297*185,非常神奇的尺寸,如果单独每张存,就是512*256,非常占地方,TP把所有的图片打包到一张图片上,尽可能让图片的使用率最高,防止宝贵的内存浪费。
TP打包很简单,把文件夹往TP工作区一拖,选择文件名,然后publish就行
打完包后的图片,
解释下这三个文件,最下面那个是TP的资源文件,有点类似与PSD,总之以后想编辑,打开它就行。
swordMan.png,是合并后的文件,尺寸是令人happy的1024*1024,很紧凑。
swordMan.plist,则是描述这些图分别是合并前的图片集,里面写了一大堆路径,大家要是好奇打开看看就了解了。
/*
注意,这是最土鳖的一种实现方式,真实的DNF的实现机制远比这复杂的多,为了实现换装系统,DNF将所有能换装的部分全部拆碎,然后用类似与xml的文件存