【插播002】Subsurface

综述:

整体效果:透光不透明

次表面散射(SSS)模拟光线进入对象并在其表面下散射的效果。并非所有的光线都从被照明对象表面散射,其中一部分会穿透表面并被材质吸收、散射在照明对象内部。这些在材质内部散射的光线中,还会有一部分会再次回到被照明对象表面,并被摄像机捕捉、变得可见。这个过程被称为次表面散射SSS。SSS对于大理石、皮肤、树叶、蜡、牛奶等材质的真实再现是必不可少的。该着色器中的SSS组件使用蛮力光线追踪算法(暴力算法,穷举法)进行计算。

当渲染像堆叠的塑料这种材质时,SSS显得尤为重要,例如:

左不启用SSS,右启用SSS


各项参数详解:

Subsurface参数

【Weight】控制漫反射和次表面散射之间的“混合”(次表面散射的强度)。当设置为1.0时,只有SSS,当设置为0时,没有任何SSS。 在大多数情况下,使用1.0(完全SSS)。


通常,提高权重值,颜色会变得更通透:



【Color】用于确定次表面散射效果的颜色。 例如,皮肤材质意味着将其设置为肉色。

Tips:
Skin Color
通常,将皮肤颜色纹理贴图链接到次表面颜色,并将次表面颜色的半径设置为适合皮肤的值(假设红色主要来自血液,大多数情况下红色通道值越高,皮肤呈现颜色越红)。如果需要的话,半径也可以被纹理化。静脉是颜色纹理贴图的一部分,不仅影响皮肤颜色,而且还影响次表面散射在皮肤上的表现。
标准曲面混合了Base和SSS,你可以自己选择是否在皮肤上使用漫反射。这种混合可以用于多种情况,例如混合不同材质的面具或者面部彩绘,或通过将相同的材质连接到 Base ColorSubsurface Color并更改混合条件来改变清晰度。

皮肤着色器设置举例

皮肤着色器参数设置参考

【Radius】光线在表面下可以穿透的深度,也称为“平均自由程”(MFP)。这个参数(Radius)影响散射光线在返回表面之前,在表面之下传播的平均距离。可以为每个色彩成分(r,g,b)分别指定不同半径值。Radius的值越高模型的透光性越强,值越低外观透明度越低。



颜色越浅,散射的光越多。 值为0将不会产生散射效果:

增加Radius的值可以改变材质的外观,使其起来从像皮革到像大理石。 SSS非常依赖数值范围, 需要根据模型的大小调整Radius。 如果要使用默认的SSS设置进行渲染,则可能会产生某些不正确的外观。 当然另一种选择是,调整场景数值,也可以得到类似的结果。

可以为每种RGB颜色选择不同的Radius值,而不是分配相同数值给所有颜色。 例如,粘土或皮肤等材料的Radius值,红色应高于绿色和蓝色。

Tips:
渲染皮肤时,应使用像1.0,0.35,0.2等值,表示红色应该分散最深,绿色和蓝色其次。 这将取代皮肤的三层工作流程(深层,中层和浅层),使深层显示为红色,表明深层应以更大的半径散射,即scatter_radius.R设置为更大的值。

下图显示了增加红色的Radius值时的效果。 注意圆周边的彩色“边缘”的效果。 将合成包中源图像的红色通道进行高斯模糊,会出现同样的效果。



【Scale】控制光线在反射回去之前,可能在表面之下传播的距离。 它可以缩放散射半径,调节颜色的SSS半径。

如果场景以米为单位,则可以将SSS比例设置为0.01,以厘米为单位指定SSS半径。 例如对于皮肤,SSS半径可以是0.37cm,0.14cm,0.07cm。



**【Type】可以选择diffusion或者randomwalk两种类型(默认情况下使用diffusion,以免打破现有场景外观)。

  • 与基于扩散理论的BSSRDF(Bidirectional Surface Scattering Reflectance Distribution Function)方法不同,randomwalk实际上是记录表面之下光线的随机游走踪迹,并且没有假设几何存在局部平坦。这意味着randomwalk可以顾及像蛮力体积渲染(BF算法,暴力算法,穷举法)那样的各向异性散射,并且能够在凹面和小细节周围产生更好的结果。
  • 对于较大的散射半径(即平均自由程大的介质)而言,randomwalk的渲染效率远远大于diffusion。另一方面,在重介质(即平均自由程小的介质。重介质指密度大于1g/cm3的介质,包括重悬浮液和重液)中,randomwalk可能较慢,并且不支持用于将两个表面混合在一起的sss_setname,可能需要重新使用别的材质以实现类似的外观。randomwalk对非闭合网格更敏感,例如“嘴、袋子”等几何内部也会投射阴影。

有关BSSRDF请移步:局部光照模型杂记

【Anisotropy】Henyey-Greenstein(HG函数)在-1(完全后向散射)和1(完全前向散射)之间的各向异性系数。 对于各向同性介质,其默认值为0,从而在各个方向均匀地散射光线,以获得均匀的光照效果(例如镜面)。 正值偏向光线散射前方,负值偏向光线散射后方。
这个参数只适用于randomwalk SSS模式。

【SSS Between Objects】可以将多个对象标记为属于同一个SSS“集合”,以便照明在对象边界上模糊。 一个常见的用例是牙齿和牙龈之间的模糊。 它通过将常量STRING userdata sss_setname给集合中对象赋予相同值来启用。
目前这种方法与randomwalk SSS不兼容。

禁止私自转载。
转载请私信。

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

推荐阅读更多精彩内容