GAMESH

游戏美术动画unity资源搬运工!

剧情党,完美控!
桐崎千棘
当前位置:首页 > 工作 > 正文内容

PBR_Guide

admin3年前 (2017-11-04)工作3780
光与物质:基于物理的渲染与着色理论光是一种复杂的现象,它同时展现出波与粒子两种特性。于是,为了描述光的表现特性,人们建立了各种模型。作为材质艺术家,我们感兴趣的是光线模型(Light Ray Model)因为它描述了光与物质的交互作用。 对我们来说,理解光线如何与物质表面交互非常重要,因为我们的工作是创作描述物体表面的材质。我们创作出的纹理与材质在虚拟世界中与光交互,对光线表现特效理解的越多,创作出的材质就会更好。在这篇指南中,我们会讨论物理理论,而基于物理的渲染(physically-based rendering)(PBR)模型正是建立在其上的。我们从光线开始,逐步讲解到PBR中的关键点。 当光线击中一个表面时,以下的两件事情至少会发生一 件,或同时发生: 1.光线在该表面上反射,并沿另一个方向传播。它遵从

反射定律,即反射角等于入射角(反射光)。

2.光线沿直线轨迹从一个介质传播到另一个介质中(折

射光)。

此时,我们可以说,光线分成了两个方向:反射与折射。

在该表面上,光线被反射或折射并最终由两种介质之一

所吸收。然而,吸收并不发生在该表面处。

光线模型阐明,光线在均匀透明介质(如空气)中的轨

迹为直线。光线模型同时也阐明,当光传播遇到表面时,

例如遇到不透明物体或穿过不同介质如从空气折射入水

中,光的表现是可预测的。这样,当光从一个起点传播

到某点最终转换为其他形式例如热时,我们可以将它的

轨迹视觉化。

击中一个表面的光线称为入射光,而它击中的角度称为

入射角,如图01所示。

一条光线射入两个不同介质间的平面交界面。

blob.png

吸收与散射(透明与半透明)

漫反射与镜面反射

在不均匀的介质或半透明材质中传播时,光会被吸收

或散射:

1.吸收,随着光转化为其他形式的能量(通常转化为热

能)光的强度衰减,并且依据不同波长的光被吸收的总

量,光的颜色也发生改变,但光线的方向不变。

2.散射,光线的方向随机变化,偏移量依材质而定。散

射会随机改变光的方向但光的强度不变。耳朵是一个很

好的例子。耳朵很薄(光线吸收较少),于是你可以观

察到散射后的光线从耳朵背面贯穿而出。如果不发生散

射并且吸收较少,光线可以直接穿过该表面如玻璃。举

个例子,当你在泳池游泳时,池水足够干净,你可以睁

开双眼并且在清澈的水中看到很远的距离。然而,该泳

池有一段时间没有清理,池水变脏时,水中的灰尘粒子

将会散射光线并因此使得水的清晰度降到很低。

光在这样的介质/材质中传播的越远,被吸收以及/或者

散射的就越多。因此,物体厚度在决定光被吸收或散射

的多少上起很大作用。可以在shader(着色器)中使用

一张厚度贴图来描述物体厚度,如图02。

物体厚度在决定光被吸收或

散射的多少上起很大作用

blob.png

漫反射与镜面反射

在不均匀的介质或半透明材质中传播时,光会被吸收

或散射:

1.吸收,随着光转化为其他形式的能量(通常转化为热

能)光的强度衰减,并且依据不同波长的光被吸收的总

量,光的颜色也发生改变,但光线的方向不变。

2.散射,光线的方向随机变化,偏移量依材质而定。散

射会随机改变光的方向但光的强度不变。耳朵是一个很

好的例子。耳朵很薄(光线吸收较少),于是你可以观

察到散射后的光线从耳朵背面贯穿而出。如果不发生散

射并且吸收较少,光线可以直接穿过该表面如玻璃。举

个例子,当你在泳池游泳时,池水足够干净,你可以睁

开双眼并且在清澈的水中看到很远的距离。然而,该泳

池有一段时间没有清理,池水变脏时,水中的灰尘粒子

将会散射光线并因此使得水的清晰度降到很低。

光在这样的介质/材质中传播的越远,被吸收以及/或者

散射的就越多。因此,物体厚度在决定光被吸收或散射

的多少上起很大作用。可以在shader(着色器)中使用

一张厚度贴图来描述物体厚度,如图02。

物体厚度在决定光被吸收或

散射的多少上起很大作用

vol. 1 - 光与物质:基于物理的渲染与着色理论

镜面反射是直接从表面反射的光,正如我们在前面光线

部分中讨论过的。光线从该表面反射并沿另一方向传播。

它遵从反射定律,即在理想平面上反射角等于入射角。

然而,重要的是,大部分表面并不规则,并且因此反射

方向会依据表面的粗糙度随机变化。这一现象会改变光

的方向,但光的强度保持不变。

粗糙表面会呈现更大更暗的高光。光滑表面会保持镜面

反射聚焦程度,因而当从合适角度观察时,表面会显得

更明亮或光强度更高。然而,在这两种情况中反射光的

总量相同,见图03

漫反射是经过折射后的光。光线穿过一个介质到另一个

介质并在物体内部散射许多次。随后它再次被折射出该

物体,返回到原先的介质中,而二次折射的位置与首次

折射近似在同一个点,如图04。

漫反射材质吸收性非常强,这意味着当折射光在该材质

内部传播的足够远时,它很有可能被完全吸收。这表明

当光线能够从该材质中再次折射出来时,它可能并没有

离开入口点传播很远。这正是入口点与出口点间的距离

可以被忽略不计的原因。Lambertian(朗伯特)模型,

即在传统的着色观念中经常使用的漫反射模型,并不将

表面粗糙度考虑在内,但存在一些漫反射模型将它考虑

在内,例如Oren-Nayar模型。

同时具有高散射以及低吸收的材质有时被称作“参与介

质”或“半透明材质”。例如烟、牛奶、皮肤、翡翠以

及大理石。渲染后三种材质也许可以通过附加次表面散

射模型来实现,在次表面散射模型中,光线入口点和出

口点之间的差异不再被忽略。精确渲染一些变化剧烈,

并且散射和吸收都很低的介质,如烟或雾,需要一些资

源开销更大的算法例如蒙特卡罗(Monte Carlo)模拟。blob.png

 

 

扫描二维码至手机访问

扫描二维码推送至手机访问。

版权声明:本文由GAMESH发布,如需转载请注明出处。

标签: 渲染模型
分享给朋友:

相关文章

JS动态改变网页背景

JS动态改变网页背景

废话不多说,直接上代码(去掉//就ok)<script type="text/javascript">//<!CDATA[// var bodyBgs = [];...

3dmax各种问题解决方案

3dmax各种问题解决方案

做动画已经几年了,一年中大部分的时间都在跟3dmax打交道!每天总会遇到许多奇葩的问题,然后这里我就根据自己经验总结一些决绝解决办法,希望对大家有帮助!   1.0  &...

不经意间我的膝盖又中了一箭

不经意间我的膝盖又中了一箭

以前我并不知道这个世界有多大,直到我的膝盖中了一箭。 以前的我一直呆在家中,并不知道这个世界有多大。后来我的兄弟们都到外面去屠龙了,我也决定像个爷们儿一样出去屠龙。 听说最近有一个龙裔杀死了一条龙...

unity3d启动一次后无法再启动

unity3d启动一次后无法再启动

前两天遇到一个奇葩问题,就是打开unity3d第一次开机可以正常启动,关闭后就没法再启动,就卡在界面那里。只有重启电脑才能再次打开,一开始我也不知道怎么解决。无意中我发现娱乐管家把unity禁止了联网...

参与的第一部2D游戏《魔界战记》

参与的第一部2D游戏《魔界战记》

魔界战记是北京梦幻果冻去年开发的一款移动平台的RPG游戏,这个游戏动作是外包给我去年工作的阔越科技制作的!所以这款游戏是我参与的第一款二维游戏,他们公司给过三个项目给我们!这款魔界战记是我比较期待的,...

游戏性?

游戏性?

前段时间谈游戏的真实性,被人骂是破坏游戏性,回去仔细一想,堆画质堆剧情的游戏多如牛毛,这些都跟游戏性没有关系。再说我们的短篇游戏大赛,也分导演组勇士组两个组,几乎没有游戏性的导演组热度丝毫...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。