网易首页 > 网易号 > 正文 申请入驻

无主之地着色器(和纹理)

0
分享至

本文转自公众号:Thepoly

Hello . 大家好

今天给大家带来无主之地着色器纹理解析

原作者为西班牙大佬Daniil Spivak

https://www.artstation.com/spacecentipede/blog

前段时间,我根据 Sergi Broza 的 2D 概念制作了 Effie 的角色模型 https://www.artstation.com/artwork/yD0ExO

剧透:我接下来要分享的并非什么秘诀。我只是从 YouTube 教程和其他资源中学习,然后把各种东西混合在一起,最终得到了这个效果。在本文中,我将逐一讲解,并展示节点设置的截图。如果你想创建类似的材质,只需复制你需要的部分即可。

首先,您在《无主之地》中看到的漫画风格可以分为两部分:直接绘制在纹理上的效果,以及着色器本身稍后添加的效果。

在第一张图片中,后期处理和纹理描边均已启用。在第二张图片中,后期处理已关闭,但纹理上的描边仍然可见。在第三张图片中,两种效果均已完全禁用。

您可以看到 Manny 的原始效果,无需任何手绘线条。我们可以看到模型周围的轮廓,以及基于法线的效果(稍后会详细介绍)。阴影部分填充了交叉影线,就像经典漫画一样;高光部分则使用了点状图案,就像老式漫画书的印刷一样。颜色渐变被简化为阶梯状,我们稍后可以调整它来控制整体外观。

这是基础的漫反射纹理。我还在 Alpha 通道中添加了一个蒙版,以便在织物上创建菲涅尔效果,但这个细节在这里并不重要。

所有有趣的东西都发生在 RMAL 纹理中。我们按通道来分解它:红色表示粗糙度,绿色表示金属度,蓝色表示遮挡。Alpha 通道保存线条。

在 Substance Painter 中,我将所有这些笔触绘制到一个特殊的通道中:黑色用于轮廓,白色用于高光。每个笔触的颜色要么比中灰色更深,要么比中灰色更浅,这使得材质能够将深色线条与浅色线条区分开来,并将它们作为独立的参数进行显示。这样,我们就可以随意调整轮廓颜色和高光。

这是完整、扩展的服装主材质。你会注意到我没有使用虚幻引擎中常见的节点连接方式,而是使用了 NameRerouteNodes。说实话,我真的很讨厌默认的意大利面条式连接看起来乱糟糟的——搞清楚各个节点连接在哪里真让人头疼。

所以我把节点从左到右排列,分组到块中,并清晰地命名路由。这样,你随时可以按名称搜索,并立即知道哪些节点的去向。更加简洁,也更容易操作。

高清图片:https://cdna.artstation.com/p/assets/images/images/091/148/228/4k/daniil-spivak-effy-mm-materialgraph-0-00000.jpg? 1755961075

关键在于将深色笔触与浅色笔触分离,并分别放入各自的蒙版中。为此,我使用了“步进”和“饱和度”功能。完成后,我就可以抓取蒙版来生成轮廓,并用任何我想要的颜色进行着色。

这些蒙版也可以在其他地方重复使用 - 例如,我将它们插入金属和镜面参数中,这样轮廓就不会拾取任何高光。

漫反射和手绘描边就到此为止了。现在我们来看一下后期处理材质本身的设置。材质图太大了,所以我把它分成了两部分。

高清图片: https://cdna.artstation.com/p/assets/images/images/091/148/252/4k/daniil-spivak-pp-outline-materialgraph-0-00000.jpg? 1755961161

让我们逐块进行,我将简要解释每个部分的作用以及它给出的结果。

简而言之,这个块提供了基础光照。我们需要光影边界,以便稍后构建阶梯状的漫画风格着色。通过将去饱和的 PostProcessInput0 除以去饱和的 BaseColor,我们得到了基础光照。在此基础上,我使用场景纹理中的金属数据生成一个金属遮罩,并使用镜面反射将所有笔触推入一个单独的遮罩中——因为我不希望它们包含任何光照信息。笔触应该始终保持暗色。

接下来,我们构建颜色之间的“阶梯”——就像老式漫画书印刷那样,调色板有限。这里的关键节点是 Floor 节点:它会向下取整值,并通过除以它们,我们在光影之间创建那些硬阶梯。最终呈现的是一个双色调图像,其过渡是阶梯状的,而不是平滑的渐变。

接下来,我们将最终结果与最终图像和纯色进行混合,并使用参数控制混合效果。与默认着色相比,颜色可能会略有偏差,这是我们想要避免的。为了解决这个问题,我添加了一个“功率”节点和一个“亮度校正”节点,这样我就可以根据需要调高或调低亮度。

现在我们来看看点线图案块。这里我们生成阴影中的笔触和高光中的半色调点。在底部,你会看到三个子块:线条图案、半色调图案和距离抠图蒙版。前两个子块会程序化地创建实际的图案(因此我们无需加载额外的纹理),而抠图蒙版会使笔触随着距离的增加而淡出。如果没有它,当你缩小时,线条会保持屏幕大小,与角色相比会突然显得巨大——这感觉非常不对劲。

光照处理方式与之前相同:将 PostProcessInput0 除以颜色,然后使用曲线分离最暗和最亮区域。暗区使用交叉影线,亮区使用半色调点。

我还添加了静态开关参数来关闭金属表面上的笔触(因为它们在那里看起来并不总是很好),另外还添加了一些额外的控件来调整高光中的线条不透明度、大小和点密度。

高分辨率:https://cdnb.artstation.com/p/assets/images/images/091/148/625/4k/daniil-spivak-pp-outline-materialgraph-0-00007.jpg? 1755962450

好了,现在到了棘手的部分——创建大纲。这需要构建几个相当复杂的函数。说实话,我自己并没有完全弄清楚每个细节,所以如果感觉困惑,不用担心——你可以直接复制我的做法。不过,我会尽力解释每个部分的主要功能。

我根据 Evans Bole 的教程制作了这个效果——您可以通过下面的链接查看。在这里一步一步地解释会花很长时间,所以最好直接从源代码中查看。

https://www.youtube.com/watch?v=9KvUfnrHcqM&t=71s

高分辨率:https://cdna.artstation.com/p/assets/images/images/091/148/610/4k/daniil-spivak-pp-outline-materialgraph-0-00008.jpg? 1755962418

为了使我们的轮廓在模型上正确呈现,我们需要设置以下功能:

  1. MF_获取内核
  2. MF_DetectEdges_depth
  3. MF_DetectEdgesNormal
  4. MF_DTM_凝视角度
  5. MF_厚度_调制
  6. MF_Mask_depth

1) 首先,我们需要一个名为MF_GetKernel的辅助函数。此函数会生成中心像素及其四个相邻像素(左、右、上、下)的 UV 坐标。这基本上是为接下来的计算做准备。

2) 接下来 -MF_DetectEdges_depth。我们需要一个函数来检查像素是否位于网格的边缘,并据此生成轮廓蒙版。这时,之前创建的 GetKernel 函数就派上用场了。

3) 现在我们已经完成了沿着物体边界构建轮廓的部分,但仍然缺少基于法线贴图的轮廓。为此,我们需要创建一个名为MF_DetectEdgesNormal的新函数。它基本上是前一个函数的副本——但它不是使用场景深度,而是依赖于 WorldNormal。

4) 我们还需要一个小的辅助函数来去除网格表面上与摄像机视图过于平行的多余轮廓,例如地板。这个函数通过使用简单的菲涅尔效应来创建额外的遮罩,过滤掉与摄像机呈锐角的像素,从而解决这个问题。让我们创建MF_DTM_Gazing_angle

5) 下一个函数非常重要:MF_Thickness_Modulation。它使轮廓的粗细根据角色与相机的距离动态变化。如果没有它,线条将保持与屏幕的相对关系——因此,当你缩小时,轮廓会显得太粗,最终覆盖整个角色。

6)我们还需要这个函数来关闭太远的物体的轮廓 - MF_Mask_depth。

所有主要功能都已准备就绪,现在可以将它们组合起来了。让我们看看轮廓图内部发生了什么。

整个设置分为两部分。第一部分在网格周围创建外轮廓,第二部分基于法线生成轮廓。两者使用基本相同的函数——唯一的区别是网格轮廓使用 MF_DetectEdgesDepth,而基于法线的轮廓使用 MF_DetectEdgesNormal。

  1. 这两个函数是我们轮廓系统的核心。它们生成用于绘制轮廓的蒙版。每个函数都有两个输入——厚度和阈值,我们将在下文中介绍。
  2. 在 Thickness 输入中,我们插入了 MF_Thickness 调制函数,该函数有三个输入引脚。第一个引脚设置轮廓的最小厚度,第二个引脚设置最大厚度,第三个引脚定义达到最大值时的距离。这为我们提供了一个渐变效果:轮廓逐渐由细变粗,一旦达到(比如说)距离 2000,它就会保持在最大值,不再增加。
  3. 在阈值输入中,我们插入了这段代码。它会调整阈值,使角色距离越远,轮廓的扩散范围就会根据场景深度缩小。这样,我们不仅会随着距离改变轮廓的粗细,还会改变轮廓实际显示的区域。
  4. 在这里,我们使用 MF_Mask_depth 函数来切断远处的物体,因为我们绝对不希望轮廓出现在背景中的物体上。
  5. 这部分功能确保轮廓随着角色的远离而平滑淡出。如果没有它,你会看到轮廓忽明忽暗,并且其粗细变化剧烈——这看起来非常令人分心。
  6. 在这里,我们终于把所有东西混合在一起了。PIN A 是没有轮廓效果的图像。PIN B 是轮廓颜色。Alpha 是轮廓蒙版本身——它告诉着色器在哪里应用轮廓颜色。

具体设置取决于你的项目。你需要根据角色与摄像机的距离,以及你希望在不同距离下保持哪些细节可见来调整这些值。

最后一步是添加模板蒙版,这样所有这些效果就只作用于我们的角色,而不是整个环境。当然,如果你确实希望效果作用于周围环境,可以关闭它——这实际上取决于你想要的效果。

最重要的是不要忘记在项目设置和网格本身中启用自定义深度。

就这样!我想我已经涵盖了所有关于制作着色器和使用纹理的知识。感谢所有坚持到最后的读者——这篇文章很长,但我想详细解释一下。网上有很多关于如何制作单元格着色器或轮廓着色器的教程,但我想把所有东西都整合起来——包括纹理应该是什么样子,以及如何将它们组合起来,使整个设置真正发挥作用。

分享就到这里辣,谢谢大家!下次再见!

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
残雪再次领跑,2026诺贝尔文学奖还有哪些可能

残雪再次领跑,2026诺贝尔文学奖还有哪些可能

界面新闻
2026-10-06 11:06:26
一线城市60万定律!不管你是任何单位任何职业,只要工资年收入超过60w,基本都要放弃个人生活

一线城市60万定律!不管你是任何单位任何职业,只要工资年收入超过60w,基本都要放弃个人生活

毯叔盘钱
2026-10-06 09:11:44
求放过,蔡康永最新回应来了,真的怕了!

求放过,蔡康永最新回应来了,真的怕了!

故事终将光明磊落
2026-10-06 09:58:43
97岁老太,守住1450亿商业帝国

97岁老太,守住1450亿商业帝国

21世纪经济报道
2026-10-05 19:06:01
国庆高速数据彻底打脸!油电大势已定,再也回不去了

国庆高速数据彻底打脸!油电大势已定,再也回不去了

华庭讲美食
2026-10-06 02:59:29
恶劣至极!24岁法国选手在上海大师赛用球拍砸观众席 随后愤怒退赛

恶劣至极!24岁法国选手在上海大师赛用球拍砸观众席 随后愤怒退赛

风过乡
2026-10-06 11:48:36
又一“机车博主”去世,年仅28岁!五天完成摩旅西藏,知情人透露死亡细节

又一“机车博主”去世,年仅28岁!五天完成摩旅西藏,知情人透露死亡细节

火山詩话
2026-10-05 15:13:28
我娶了朝鲜退役女兵 ,一个月同床42次,她却从不提回国探亲,岳父心梗时我塞给她270万,11年后我去银行取钱,柜员一句话让我当场瘫软倒地

我娶了朝鲜退役女兵 ,一个月同床42次,她却从不提回国探亲,岳父心梗时我塞给她270万,11年后我去银行取钱,柜员一句话让我当场瘫软倒地

朝暮书屋
2026-10-05 22:09:04
全国贷款余额逼近300万亿!房地产泡沫破了,地方债要兑付,信贷刺激正在失效

全国贷款余额逼近300万亿!房地产泡沫破了,地方债要兑付,信贷刺激正在失效

回旋镖
2026-10-05 19:43:05
以色列:严禁拥有伊朗、伊拉克、黎巴嫩、阿曼、巴基斯坦、卡塔尔和沙特等27国单一或双重国籍的机组人员执飞或搭乘赴以航班

以色列:严禁拥有伊朗、伊拉克、黎巴嫩、阿曼、巴基斯坦、卡塔尔和沙特等27国单一或双重国籍的机组人员执飞或搭乘赴以航班

第一财经资讯
2026-10-05 09:08:21
甘肃男孩买3瓶饮料共中奖71瓶,店主回应:借购物车给他们拉回家,之前没有中奖这么多瓶的

甘肃男孩买3瓶饮料共中奖71瓶,店主回应:借购物车给他们拉回家,之前没有中奖这么多瓶的

潇湘晨报
2026-10-06 10:24:16
执行死刑前仍叫嚣“狼生来要吃肉”,电诈“金主”巫鸿明:每赚一个亿要分明家至少2000万作为“保护费”

执行死刑前仍叫嚣“狼生来要吃肉”,电诈“金主”巫鸿明:每赚一个亿要分明家至少2000万作为“保护费”

中国能源网
2026-10-06 10:46:12
面对中国警方依然叫嚣,陈大卫今晚出镜

面对中国警方依然叫嚣,陈大卫今晚出镜

扬子晚报
2026-10-06 10:52:35
外国游客试图在合照中搭肩,被中国女特警婉拒,网友点赞:既礼貌又有威严

外国游客试图在合照中搭肩,被中国女特警婉拒,网友点赞:既礼貌又有威严

台州交通广播
2026-10-06 12:15:45
事业没了、婚也离了,被封5年后赵薇再曝近况,瘦到脱相不敢认

事业没了、婚也离了,被封5年后赵薇再曝近况,瘦到脱相不敢认

阿讯说天下
2026-08-30 06:10:34
中方放弃谈判!果断抓捕“佤邦联合军”副总司令

中方放弃谈判!果断抓捕“佤邦联合军”副总司令

看看新闻Knews
2026-10-05 19:15:03
缅北电诈回流人员自述被割肾的亲身经历:“那时候不要说一个肾了,锯条腿、锯条手我都愿意,只要能走”

缅北电诈回流人员自述被割肾的亲身经历:“那时候不要说一个肾了,锯条腿、锯条手我都愿意,只要能走”

政知新媒体
2026-10-05 10:12:24
好人没好报?蔡天凤案曝最无耻一幕!开水煮、轮流上、仅冰山一角

好人没好报?蔡天凤案曝最无耻一幕!开水煮、轮流上、仅冰山一角

青杉依旧啊啊
2026-10-05 10:25:32
俄实验室爆发鼠疫:28岁技术员打碎装有肺鼠疫的试管,几天后死亡

俄实验室爆发鼠疫:28岁技术员打碎装有肺鼠疫的试管,几天后死亡

阿晪美食
2026-10-06 10:18:20
尴尬了!原定26桌婚宴突来36桌:山东新娘学生家长全家赴宴

尴尬了!原定26桌婚宴突来36桌:山东新娘学生家长全家赴宴

普陀动物世界
2026-10-06 10:23:52
2026-10-06 15:20:49
CG世界 incentive-icons
CG世界
分享国内外优秀CG作品,教程
5841文章数 8550关注度
往期回顾 全部

科技要闻

光遗传学是什么,为什么这项发现如此重要

头条要闻

杀人祭天的缅北主犯满不在乎:让中国的法律制裁我吧

头条要闻

杀人祭天的缅北主犯满不在乎:让中国的法律制裁我吧

体育要闻

30天30队·雄鹿:没有扬尼斯,重新试错吧

娱乐要闻

突发 邓紫棋深圳演唱会安可前大屏起火

财经要闻

杨植麟断腕:Kimi的至暗时刻与远征

汽车要闻

智能化再提升 2027款东风标致、东风雪铁龙新车更人性化了

态度原创

游戏
家居
房产
旅游
手机

PS5破解不是好事!外媒:弊端太多 还可能变砖

家居要闻

2026建博会(广州) 公装联探展交流活动

房产要闻

保利大爆发,冲到榜一!海南楼市前三季度,热销榜出炉!

旅游要闻

看演出、做简牍、吃烤肉 甘肃嘉峪关假期人气旺

手机要闻

谷歌Pixel 12系列手机曝光:Fold折叠内屏升至2296×2404分辨率

无障碍浏览 进入关怀版