教程-理解阿诺德基于物理渲染

基于物理法则设计材质可以简化着色和照明,即使我们不追求完全的写实。理解和遵循一些原则,可以使图像更可信,以及让材质在不同的照明组合下都有可预见的效果。

在现代渲染器中,基于物理渲染(PBR)是指某些概念,诸如能量守恒定律、物理上可信的散射、材质分层、线性色彩空间(energy conservation, physically plausible scattering and layering in materials and linear color spaces)。虽然阿诺德是基于物理渲染器,但可以根据所需允许你打破这些规则,创造不符合物理法则的材质。在这份文档中,我们会解析基本理论,以及如何使你的shader遵循这些原则。

光子和散射

在渲染中我们模拟光子从灯光中发射,透过空气或体积物,经过表面反射,最终落在相机的传感器上。无数光子在传感器的组合,便形成了渲染出来的画面。

这意味着在物理的观点看来,表面shader描述了表面是如何跟光子相互作用的。光子落在物体上,有可能被吸收、反射、穿过表面折射、或者在物体的内部散射。这些元素的组合,构成了多种多样的材质。

能量守恒定律

除非一个物体是发射光子的光源,否则它不能返回比接收的光线更多的能量。为了材质能量守恒,离开表面的光子数量会少于或等于接收的光子数量。如果一个材质不能量守恒,它会表现得过亮、渲染出更多噪点,特别是开启全局照明(GI)的时候。

为了保证能量守恒,一个材质各元素的分量(weight)和颜色不能超过1,我们也要小心地确保各元素的总合成也遵循能量守恒,之后会进一步解释。

材质

在微观层面,物体表面有复杂的细节。在渲染的时候,我们不需要用几何体表现这些细节,而是使用含有简单易懂的调节参数的统计学模型。阿诺德的Standard Surface shader有1或2个镜面反射层,还有漫反射或透明的内部。这个shader能表现大量的材质,接下看看各个独立的部分。

漫反射和次表面散射

首先考虑漫反射内部。迎面而来的光子会进入物体内部,在里面散射,被吸收或者从别的位置离开物体。如果光子散射了很多次,我们会得到一个漫反射的外观,由于光子从不同的位置和角度离开物体。对于一些物体例如皮肤,光子可以在表面以下散射得相对较远,得到一个柔软的外观,因此使用次表面散射渲染。对于一些物体例如未加工的木头,光子不会散射得太远,造成一个坚硬的外观,所以使用漫反射渲染。对于薄的物体例如树叶,光子可以散射到物体的另一边,所以我们使用sss漫反射渲染,并开启thin_wall。

注意,这些种类的物体根本上都有着相同的深层物理结构,即使我们在shader中提供了独立的控制点。

漫反射内部也对物体整体颜色有着巨大影响。每一个光子有着相关联的波长,取决于材质的属性,拥有某些波长的光子会比其他光子更易被吸收。相反地,某些光子也更容易离开物体表面,这就产生了颜色。

红色的苹果反射红光。只有红色波长的光会被散射到表面,其他波长的都被吸收了。

能量守恒

单个光子只可以参与漫反射、次表面散射、背光这些元素的其中之一。为了物理正确性,我们不希望离开表面的光子比进来的多。Standard Surface shader会自动确保这些元素的总量不会高于1。

镜面散射

粗糙度

镜面层是使用微片面分布(microfacet distribution)来模拟的。我们假设表面是无数随机指向的小平面组成。一个低粗糙度的平面例如镜子,小平面之间的差异非常小,导致一个清晰的反射。而高粗糙度的平面由各种朝向不同的小平面构成,得出的反射就非常柔软。

苹果上有一个清晰可见的高光。注意桌面的高光反射模糊不清,是因为用了较高的粗糙度
粗糙的反射是由散射的光线造成的
光滑表面,入射角等于反射角

粗糙度贴图

让表面的高光得到更丰富效果,需要用到粗糙度贴图。这不仅会影响高光的亮度,而且影响环境反射的清晰度。

低粗糙度
高粗糙度

穿透(Transmission)

光子不仅在表面反射,还会穿过表面折射。光子会透过镜面反射层,在另一边离开时通常会改变方向,这通过折射系数控制(IOR)。

如果物体内部是透明的,例如干净的玻璃,光子会穿过物体并从另一端出来。如果是一个漫反射内部,光子会在物体内散射,被吸收或透过另一边离开。镜面反射层的折射越强,深层的漫反射内部越容易看得见。对于金属物体,光子透过镜面折射后会立刻被吸收,所以内在的漫反射是不可见的。

菲涅尔(Fresnel)

光子被镜面层反射或折射的百分比取决于视角。当观察迎面的表面,大部分光被折射了,同时在边角的大部分光被反射了。这就是菲涅尔效应。折射系数精确控制了这个效果随着视角变化而变化的程度。

镜面双向反射分布随角度变化而变化

透明度和穿透

使用贴图来做表面建模时透明度是最容易理解的。这不影响光子和表面的相互作用,而是直接表明哪里的几何体是不可见的,光子可以直接穿过。

渐变贴图连到透明度节点

对透明度一个典型的使用是面片类的效果(sprite type),例如从多边形面片上切出树叶的形状,或使毛发的尖端变透明。注意如果使用了太多透明的面片,会减慢渲染速度。

透明度开
透明度关
连接到透明度的alpha贴图

穿透深度(Transmission depth)类似,不过相比表面,它控制了物体内部的密度。密度高的体积物会吸收更多的光子,使物体深度越深颜色越暗。


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

推荐阅读更多精彩内容