梦幻西游人物局部换色初探

梦幻西游人物局部换色初探

作者:leexuany(小宝)

由于我的犹豫不决,到现在我还没有多少游戏编程实战经验,我一直在资源、UI、程序的边缘徘徊。。

小宝一直就很迷惑,为什么梦幻西游的资源中只有一套人物素材,但是梦幻却支持人物染色,我们找不到变异召唤兽的素材,但是它的的确确存在。

一切皆从was/wap格式开始,它是256色的索引图片动画,秘密全在这神奇的调色板上。

每一个hero(就是我们能创建的那12个角色)还有summon(各种能抓到的召唤兽)都有一个配套的配置文件,形式如下:

4 0 64 128 192 256 
7
255 0 0
0 255 0
0 0 255
351 0 0
0 256 0
0 0 256
106 5 115
254 254 125
180 148 161
512 14 512
512 512 512
225 340 0
263 512 459
483 502 325
0 0 0
234 134 474
512 435 220
306 512 455
215 268 378
345 402 445
426 0 256
7
255 0 0
0 255 0
0 0 255
378 69 0
161 256 74
0 0 256
256 14 55
0 154 0
0 0 115
52 0 0
53 62 0
0 0 53
154 0 0
0 154 120
24 81 110
0 67 0
244 238 0
431 33 358
349 0 0
0 256 0
0 0 256
7
255 0 0
0 255 0
0 0 255
138 51 9
28 129 69
0 0 55
0 9 0
0 55 60
37 18 52
81 0 0
0 72 0
102 0 0
163 29 0
57 52 0
0 0 52
0 0 38
0 187 0
134 0 311
148 0 48
81 86 0
0 0 148
1
255 0 0
0 255 0
0 0 255

下面我来简单地解释下这个配置文件的含义:

第一行的4表示将调色板划分成4块,0~64,64~128,128~192,192~256
之后的操作全是对这4段调色板进行变换。

第二行的7表示存储了7种不同的配色方案,这七个方案都是对应0~64号调色板的。

接下来是3X7共21行的配色方案内容,每3行表示一个方案。如:
255 0 0
0 255 0
0 0 255
表示的是默认方案,而
351 0 0
0 256 0
0 0 256
表示另一个方案。

7个3行的配色方案之后,又可以看到一个7,它表示与64~128号调色板对应的配色方案数,之后的格式同上。

那么配色方案的含义是什么呢?

如果你用过photoshop的色彩平衡,那么就不难理解了。原理是差不多的,255表示默认,既不加也不减。

至于为什么会有
255 0 0
0 255 0
0 0 255
三行9个数值,恐怕只有网易自己知道,或者等到我能调试mhmain.dll了,但有Themida存在的前提下,这个事件的期望是零。
 
可能有的朋友还要问,“为什么分段的调色板能改变人物造型不同部分呢?”
 
请看一个调色板,这是逍遥生的调色板

逍遥生配套调色板

看到了吗?0~64号,即前4行的颜色是不是很像头发的颜色?
对啦,游戏使用的图片都是经过辅助程序和美工精心处理过的,完全按照程序的需求定制的。所以头发的颜色全部在前4行,程序在跟美工协商好规格(或者写个程序让他们用)就可以放心大胆的写代码啦。
 
 
最后,“Themida...Themida...”小宝咬牙切齿中。。。
 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值