无主之地2的渲染分析-1换装(Borderlands2 rendering analysis 1 character customization)

玩过游戏的应该知道,换装分为头和身体,先看几个身体的换装

Salvado's Duds
Feeling Blue
Padoran Legend
Classiest Man Alive
Skin of Steel

简单比较可以得出:

1,身体模型没有变化

2,衣服裤子分为很多部分,每个部分能指定颜色或者贴图

3,最后一张的手臂贴图有变化,并且全身大部分都有反光

接着挂上GPA看看


Salvado's Duds


右边是渲染身体用的六张图,分别是

0:法线

1:“区域权重",用于区分身体的不同部分

2:未知,每个换装都有同样的图,也许是用于动态效果

3:diffuse,

4:未知,同2

5:未知,可能只是提供个颜色

比较重要的是Diffuse和区域权重,放大看一下

Body Diffuse

里面包含前身(颠倒的),后背(颠倒的),一个手臂(手臂是对称的),左腿、右腿等。衣服裤子基本都是灰色的,估计是用于和其他颜色混合。

区域权重

“区域权重”图和diffuse图是有对应关系的,把diffuse图水平方向缩小0.5倍也就是“区域权重”图的一半了,估计是为了节省资源,不然可以分成2张,也说明权重图的精度降低一半后影响不大。与Diffuse用同一套uv,(0.5*u, v)用于sample左侧,(0.5+0.5*u, v)用于sample右侧。权重图中任意一个像素只有RGB中的一个分量,剩下都是0。

先看右侧权重图的RGB分别表示哪些区域,对照最终效果,R表示裤子(不包含弹夹和绑腿),G表示背带和袖子边缘,B表示上身衣服和绑腿。黑色部分使用了diffuse中的颜色。

再看左侧权重图,当一个区域同时被左侧标记了全绿或全红时就会完全独立于右侧区域,比如袖子和背带边缘,胸口的漏洞。颜色越浅则越受右侧权重图影响,全黑则完全受右侧影响。

分析一下可以猜出,每个颜色区域都可以用来指定一个颜色(或者贴图,后面其他换装再说),左侧权重优于右侧。

假设Difffuse是D,WL是左侧权重,WR是右侧权重,C1--CN是材质颜色参数

WR_SUM = Clamp01(WR.R + WR.G + WR.B)    是0或1的值,用于选择

WL_SUM = Clamp01(WL.R + WL.G + WL.B)     是0到1的值,用于过渡

RC = WR.R*C1 + WR.G*C2 + WR.B*C3    是根据右侧权重混合后的颜色,3选一

LC = WL.R*C4 + WL.G*C5    是左侧权重混合颜色,2选一

一个像素的颜色的公式大概是

D*(1-WR_SUM)  + D*WR_SUM*(RC*(1-WL_SUM) + WL_SUM*LC)

Pandoran Legend


这套换装的前5张图跟salvado's duds完全一样,新增了2张贴图,第六张是

上半身的红黄斜条就是这张图,图里是垂直的。这里应该是用的第二套uv来sample整张图,估计是在shader里旋转了uv所以在身上就是斜条了。最后一张并非全白图,而是带alpha的

borderlands字样只有前身有,后身没有,而且字样贴图本身就是斜的,并不像第六张那样是垂直的,所以应该用的第三套uv来sample的字样图。

我之前做足球游戏,10个人的队服是一样的,但是号码不一样,为了节省drawcall就用了单独的uv来叠加号码。

把之前公式里的某些颜色换成sample贴图就可以把贴图应用到身体区域了。

Classiest Man Alive

前五张也是一样的图,第六张图应用到了裤子上,应该也是第二套uv,并且用tiling做重复的。最后一张图应用到前身,但比borderlands字样那张小,估计shader里调过tiling的。估计第二套uv的展开方式是前身、后身、左右腿各自都单独占0-1的空间,各部分在uv2上是有重复区域的。UV3估计只有前身的一块是0-1,其他部位都在0-1之外。

Skin of Steel

这套换的图比较多,权重、diffuse也变了,为了让手臂手指也都变成钢铁反光,最后一张图估计是用uv2来sample的。把几张图贴出来也就能猜出大概了。

总结

身体在不换模型的情况下

1,用区域权重图表示了身体各部分,可以分别指定颜色或贴图。

2,用uv2将一个小图应用到一个权重区域上,用uv3将某个图只映射到一小块模型区域。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,271评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,275评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,151评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,550评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,553评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,559评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,924评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,580评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,826评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,578评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,661评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,363评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,940评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,926评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,156评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,872评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,391评论 2 342

推荐阅读更多精彩内容

  • 我们都知道,一个三维场景的画面的好坏,百分之四十取决于模型,百分之六十取决于贴图,可见贴图在画面中所占的重要性。在...
    自由的天空阅读 12,355评论 0 12
  • git add 文件时,出现报错LF will be replaced by CRLF in 文件夹这是由于win...
    冥冥2017阅读 301评论 0 0
  • RedHat6.4安装配置Elasitcsearch5.2.0 elastic的5.2.0版本最近刚刚发布,相比之...
    mvpboss1004阅读 909评论 0 0
  • No.63 我们现在越来越像是河流中的一块礁石,信息的洪流从我们身边呼啸而去。过去的学习是先占有信息,然后再去反复...
    进阶的石先生阅读 314评论 0 0