「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

大家一起听着音乐看文章吧 !

今天 !

让我们一起来探索

        「游戏开发小科普之头发」

当我这一期想要科普关于头发的秘密时候

我就想起了她    –   花木兰


「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

这首诗词来自于 南北朝乐府的民歌《 木兰诗 》

讲述着花木兰女扮男装,替父从军,

在战场上建立功勋 ,回朝后不愿做官只求回家团聚的故事 

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

木兰剪去了长发 , 男扮女装 , 替父从军

当她凯旋而归之后 , 又选择了在窗边梳理着自己的秀发

当我小时候 , 看到这个镜头的时候

热泪盈眶

让我们就通过花木兰的故事

一起进入小科普的世界吧 ! 

温馨提示:

此区域内容   非常轻松有趣

让我们先来看看现实中的头发吧 . 

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

再看看在游戏世界中的头发吧

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

在游戏的世界里 ,头发有着多种的类型

 

    第一种 , 绘画的风格

夏日狂想曲中的人物就是绘画出来的人物

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

还有女神异闻录5 中对话框中出现的人物

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

这样的展现一般在注重故事类游戏更常见

就像是一个可以移动的卡片人物(图片)

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

  第二种   3D 人物模型

 

首先解释一下 3D人物模型

它可以理解为  “手办”

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

和上面类型一样 , 是会动的手办

比如在奇异人生 ,偏卡通风格,

更注重游戏内容

在她诞生的那一刻她的头发也跟着诞生

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

我们来回到游戏世界中

也是同样的道理 ,在使用建模软件创造出一个女孩的时候

她的头发也已经被创造了

比如就是这样直接给你了一个完整的女孩子

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

这样的好处自然是更便捷 

但是同样失去了更精致的体现

想象一下

美女手办的长发会

随着你拿着她摆动而飘散吗 ?

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

   第三种    假发

 

假发 ,顾名思义 

为了追求极致精美和多样的头发

那就需要所谓的 “假发”

这也是我后续要讨论的主要方向

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

我们会让人物诞生时候并没有头发

这样制作出来了各种假发 ,只需要戴在头上就好了 

明白了这个想法后,我们来看看假发的秘密吧

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

    头发的颜色

底特律变人中的卡拉

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

金色与褐色混合感觉,头发的颜色在

现实中使用的是染色剂 

游戏中则是一个调色盘

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

在头发上抹上不同颜色 ,就可以实现出了这样混搭的色调 

比如天涯明月刀中的头发

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

如你所见 ,头发拥有多种的颜色混合 

并且还具有渐变效果

注意从顶部的蓝色向粉色的渐变,其实还是调色盘的功劳 

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

举个通俗易懂的例子

游戏里头发设置的颜色 , 就像是你认识的各种颜色的彩铅

但是在画纸上能用彩铅绘画出多么美的头发 

那就需要你慢慢的绘制了

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

头发的美感不仅仅是因为颜色

头发还拥有着质感

就像是洗头发后 ,柔顺和明亮的感觉

     “ 飘柔就是这样自信 ”

飘柔打钱啊喂 !

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

游戏中也是同理

因为头发也是一种材质 (Material )

会搭配着环境的不同而产生不同的效果

影响他最有趣的还是光照

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

在巫师 3 的叶奈法的头发 , 可以看到在蜡烛的灯光下,发质显得很具有油性感觉

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

那么在室外的希里 , 头发就更偏向于 干燥 / 顺带着一些小柔顺 

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

那么使用好 调色盘 与 光照

就可以创造出头发很细腻的感觉

怎么样让头发变得更加丝滑柔顺 ?

 

现实中,我们不仅使用各种功能的洗发水

还会使用 护发素,洗衣粉等

洗衣粉什么鬼啊喂!

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

游戏中也是可以做到的

主要在感官上有两点 :

第一点:

头发可以通过材质与纹理的更细腻来完成

这就是游戏里的洗发膏与护发素

没有洗衣粉啊喂

更没有火锅底料啊喂 !!

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

生化危机4重制版 –  碍事梨脸模

第二点:

在前面刚刚提到的 “彩铅绘画” ,“环境光照”影响

红蓝Buff 正在持续中 …

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

轻微的细节就体现出来了

看看耳朵那里的头发

具有小撮头发,耷拉在耳朵上

这就是细节在各种光环的加持下显得更好

 

那么飘逸又是怎么样的呢 ?

其实也是上面所提到的因素

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

只是随着风中的摇曳 ,还涉及到了流体 ,力学 

我觉得以后还有机会

在更有趣的讲解

比如从 游戏中的海洋延展到 风中飘逸的秀发

所以这里就埋下一个伏笔

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

等等 ! 

我们年轻人肯定喜欢柔顺飘逸的秀发

可是也存在有小孩,老人以及各种头发的质感

在游戏中真的也存在有各种的 “ 特技 ”

别忘了,我一直把他比喻为  “假发”

 

来看看死亡搁浅里,弩哥的头发

苍老感 ,与玛玛相比来说

多了凌乱 ,这种的苍老感在面部如胡须以及面容下加重了 。

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

所以还记得之前讨论的吗 ?

头发不仅仅是因为他本身的美

而是加了特技 和 其他的映衬

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

在这里 我还想提到一款游戏的CG

《黑悟空:神话》

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

黑悟空在渲染上将头发接近了 “完美”

在这里我们不讨论这款游戏其他

这次我们只讨论头发

在头发的细节上

他 — 做的真的“完美”

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

如果将上述的头发比喻为在白纸上作画 

那他这个更像是 在清扫出土的文物

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

举个例子 ,大家都知道头发是一根根的

黑悟空在毛发上从极小的部分开始认真绘制

就像是一个草地

上面的小草一颗颗种上去的(略微夸张)

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

可能你会想 ?

国产的游戏积累本来就不够,怎么可能做到 ?

其实有两个方面 :

一是 毛发的技术在游戏行业早已成熟

二是 我一直在拿绘画做比喻

    只是你10分钟画一张素描沾沾自喜 

    我可能花费数月画出一副而已

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

自己感想 :

其实中国的游戏行业发展怎么样

我也没有办法去改变

我能做的只有两点 :

1 我并不在乎像是悟空这样的游戏最终的生与死 

   我只是看到他们在这样建模上的细致 ,让我热泪盈眶

2 我永远热爱着游戏

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

那么到这里我肯定又要邀请出我的好朋友

《荒野大镖客2》

绿油油的草地 ,想要流泪的云朵

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

这款游戏我总是爱提到他

因为想亚瑟了 ! (抖个机灵)

这款游戏就是结合了我们前面所提到的所有的元素

这种感觉像极了 :

   特技加满的状态

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

不仅仅是头发的绘制极其的精美 

也因为他的其他元素都格外的美

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

很有趣吧

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

本期内容就到此结束

那么敬请期待下一期

「游戏开发小科普」

我们不见不散 !

悄咪咪 :  其实底下还有内容


上一期科普导航 :

「游戏开发小科普-6」我穿这件衣服好看吗?

上一期科普收入捐赠:

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

等一下 ! 

文章还没有结束 !

温馨提示:

此区域内容

认为你已经看过上面内容

来看看游戏引擎下的美吧

很多的时候 , 人物再创造出来的时候

在3D建模软件中 , 头发,身体,衣服也就全部一起制作出来了

直接使用与展示了

就像是我们提到的 “ 手办 ”

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

也可以通过用多种颜色的头发组合来实现多彩效果

注意看这里的刘海奥

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

也可以通过 材质(Material) 来设置出渐变的头发

 Hair  ( StatTrak™ ) | 渐变之色

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

也可以直接更换颜色 , 实现各种颜色的小姐姐

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

头发的模型有一个最基础的颜色(比如偏灰的)

然后直接更改材质的颜色就好了

就像是黑色的头发 可以染色为各种颜色

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

温馨提示:

此区域内容从引擎角度展示

头发也是一种材质 , 所以也受到了光照的影响

可以看到脸部的阴影

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

在线框中的样子

线框:方便查看模型的内部结构

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

仔细看 , 在单纯的模型下 

打入光照,不是太阳的自然光

会发现头发其实是具有颜色层次的

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

依旧能看到他就像是衣服一样

只是紧贴着在一起

需要更复杂的手段去

尽可能的模拟真实的头发散落

注意看下图中的胸部与头发的间距

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

可以理解为用一股股头发拼凑在一起的

先看一下头发的图

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

再看一下头发的材质图

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

所以对于这个头发,你可以这样的理解

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

一块块的拼接在一起

温馨提示:

此区域内容从材质角度

来看一下头发的材质什么样子吧

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

可以进行一下对比

生成这样的材质需要通过颜色的搭配

来看一下生成的概念图

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

看一下这个材质球最原始的样子

就像是纯黑的物体

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

别睡着了啊 !

一定要坚持读下去 !  

通过绘画板的绘制后 , 输出的效果

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

首先来看看颜色的设定吧

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

这里意思是:默认头发颜色为咖啡色 

也可以切换为使用纹理取样,偏向于褐色 

纹理取样参数2D

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

想要让头发更加真实 , 这里直接使用了纹理 

为了增加更强烈的颗粒感

毕竟没有谁的头发是完全的光滑无比的

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

为了让头发不会被穿透,比如你可以透过头发看到背后的景色

这里加入了  不透明蒙版(Opacity Mask) 

意味着要么完全可见,要么完全不可见

但是这样依旧可以让光照影响着不透明的部分.

在这里使用了:

一张纹理图 与 约为 0.5 的白色材质球做到组合

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

温馨提示:

此区域内容 从图形方面

影响的效果是什么呢?

头发是(至少我认为)是大多数玩家很容易观察以及受影响的地方

不要给我说胸部啊喂 !

所以这里也使用了

法线(Normal)

这样可以大幅度的添加纹理细节,这是一个常用的手段

因为他看起来像是添加了诸多的多边形

其实并没有

甚至渲染的数量更少

这是不使用法线的细节

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

这是使用了法线的细节

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

主要区别就是在整体的质感上

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

为了更明显的体验, 我们放在整体的头发上来看一下

如箭头所指向的地方,如同染色未影响的发根

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

为了体现出头发的更加柔软 

这里使用了Edge Mask 

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

这里使用的照相机矢量(Camera Vector)顶点法线矢量越接近垂直

则可以通过这个获取参数值 , 这个比例是使用了Depth纹理 

就是为了增加头发的柔软度

通俗点来讲就是

在你相机的离头发越近的地方, 也就越容易进行透明

所以这里就是根据位置进行计算来控制 蒙版   

上面提到的 不透明蒙版  ( Opacity Mask )

开始犯困了 ?


这里讨论一个游戏中经常所涉及到的点   

“ 深度偏移值 ”

具体是什么效果呢 ?

在引擎的角度下考虑是:

在头发的纹理上直接的使用有时候很容易产生头发像是网格的薄片 

所以在同一个平面上就容易产生片状结构(一块一块的)

深度偏移则是增加发束的深度 , 营造出头发上的层次感

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

所以仔细看

23的深度偏移是不是具有更明显的差距

可以怎么理解呢 ? 

想象一下 

荒野大镖客2的雪地里走路,人物踩下的雪印

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

在这样雪印的渲染与地面的雪接近重合的时候,那么为了不让被覆盖(多边形的公共面)

那么就可以轻微的偏移这样能让效果产生一定的透视效果,避免重叠

术语就是:  纹理映射透视处理

温馨提示:

此区域内容 从数学方面

让我们站在数学角度来看一下吧

采用标准的OpenGl透视投影矩阵对观察空间一点P 

(可以理解为一根头发)

进行偏移  P = (Px,Py,Pz,1)

 

首先Px Py Pz可以理解为

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

通俗的说: 想象一个三维空间 

在这个投影区域内的位置内

这里解释一下各个参数意思就开始计算 !

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

中心轴为z轴 , e 为焦距 

a 为宽高比, 近剪裁平面的距离为 n 

远剪裁平面的距离为f

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

这是根据三维空间的矩阵列出来公式 , 针对右边的内容

我们在引入第四维的矩阵 , W

这里再转换为 投影透视变换后 , 也就是用w坐标去变换 , 这里w是-Pz

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

这里w坐标我们只关注Z轴,所以忽略  x    与  y  的

加入一个影响因子   1 + e

所以很容易得到:

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

简单的运算一下

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

这样偏移值就算出来了 

这个偏移值上 e 的影响因子该怎么最好呢 ?

其实就是在数学中运算的一个区间吧,也就是最大值最小值

通用的做法是根据相机空间偏移Q , 深度值Pz 再来一个偏移常数e

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

这是Z轴,上面也算过一次Z轴,两个值进行相等,抽离出这个偏移常数e

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

这里只是计算出来了偏移常数 ,接下来我们只需要 

然后加入一个缓冲区

上一篇科普最后说到的内容

将他带入上面的偏移常数 , 就可以得到 相机的偏移值 Q 

这里就不列举计算了 , 我在演草纸上自己算了

有点懒了 , 哈哈哈哈哈哈哈哈哈 

「游戏开发小科普-7」风好大 , 吹掉了我的假发 !

今天的旅程结束了!

期待下一期吧 !

#免责声明#

①本站部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责。

②若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。

③如果本站有侵犯、不妥之处的资源,请联系我们。将会第一时间解决!

④本站部分内容均由互联网收集整理,仅供大家参考、学习,不存在任何商业目的与商业用途。

⑤本站提供的所有资源仅供参考学习使用,版权归原著所有,禁止下载本站资源参与任何商业和非法行为,请于24小时之内删除!

给TA打赏
共{{data.count}}人
人已打赏
生活杂谈

老书虫推荐几本精品『科幻网文』

2023-5-29 0:00:00

生活杂谈

毕业旅行推荐,十天特种兵自驾游玩四川!

2023-5-31 0:00:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索