对Reflection的误解(漫反射&镜面反射)

jplee23年的游戏开发商。 技术美术总监。 渴望退休的独立开发商。半灰max游丝结戏剧常量熊掌等 6 人赞同了该文章

Written by JP.Lee
心动的 Technical art team leader.
leegoonz@163.com

对Reflection的误解(漫反射&镜面反射)

字面含义


我们通常使用diffuse reflection(漫反射 ) 和 specular reflection( 镜面反射 ) 这两种术语。但真的懂得其含义吗?

首先来看看diffuse的字面含义。

1.散开;四散 ( 光, 热量, 味道等 )

2. 传播(知识) ,普及, 舒缓( 情绪等 )

3. ( 气体或液体) 弥漫;漫射;发散

来自:百度翻译

跟大家知道的意思一样吗?

下面来看看specular 的字面含义。

1. 镜子似的,反射的,反映的

2. ( 光学 )正反射性的

来自:百度翻译

这也跟大家知道的意思一样吗?

现在看看是否跟实际含义一样。

Diffuse
反射在粗糙的表面形成?

很多人觉得diffuse
reflection 是因表面粗糙而形成的。特别是PBR 的重要因素微表面 ( microfacet ),会使人这么想。但是diffuse大部分不是因表面粗糙而形成的,只有一部分是那么形成的。

看字面含义diffuse 有 “散开”, “传播” 的意义。就是说不是单纯因碰撞到表面后反射出来的东西。

根据参考资料[ 1 ]-{参考资料在本文末端}, diffuse形成的原理如下。

(翻译了资料的一部分)

在Solids(人造物) diffuse reflection 一般不会因表面粗糙而形成。虽然specular
reflection 会在平平的表面形成,但也不会阻止diffuse
reflection 的形成。白色大理石就算抛光 ( polishing )也会留下白色;再抛光也不会变成镜子。抛光会产出少量的specular
reflection ,但剩下的光还是会扩散反射。

某一个表面在提供diffuse
reflection 的最主要的原理中,没有包含表面这个概念; 大多数的光线会像下图一样会受到表面下方scattering center( 散射中心,译注: 电子波散射的地方 )的影响。



虽然是一小部分,也有不用散射也进行diffuse reflection的情况。跟下图一样光没有被下方吸收,但因表面很粗糙被反射到各个方向时,这种现象也可以说是diffuse。



非平滑表面的diffuse reflection. 出处 : 参考资料[ 1 ].

有可能大家不知道本文为什么要解释这些原理,因为这些对使用者的意义不大。

以上的说明是为了介绍albedo( 反射率 ) 。 对苹果照射白光时,苹果会呈红色(当然也有绿色苹果,,但这不重要),树叶会呈现绿色。一般会用“反射了红色” 说明这种现象,但实际上光线是进到表面下方进行了散射,被反射出来的是被吸收后剩下的波段

可以看出被表面反射的光和被吸收的光之间的差距吗? Specular
reflection在反射时会维持自身的光波,但diffuse reflection 会根据材质反射时不能维持自身的光波。所以specular reflection 会维持自身的颜色,diffuse reflection 则不能维持。

一般计算表面下方的散射很复杂,其消耗也很大,所以就用albedo这种概念来统称了。

这里有一个问题,为什么specular 也受到
albedo 影响?实际使用UE4 这种引擎时把Yellow(
= Red + Green ) 光照射到 Green
材质时specular成分里会包含纯Green色。原本好像会是纯Yellow,但不是。

其原因跟资料上写的一样,就算是平平的表面也不能阻止diffuse。世界上不存在纯 (或理想的) 光滑表面。这部分跟Fresnel有关联,这部分以后再说。

所有物体都有diffuse reflection?

不是的,金属( metal ),光透不进去的物质, 气体 ( gas ), 液体( liquid ), 玻璃( glass ), 透明塑料 ( transparent plastic ), 一些宝石 ( gem );盐结晶( salt crystal )等单晶体( single crystal ); 薄纸( tissue )或水晶体 ( lens of a eye )这些特殊材质没有diffuse reflection [ 1 ].

所有的材质都解释的话很复杂,所以用金属来举例说明。

金属吸收所有光线,即albedo 是 0。但是怎么形成反射的?金属内部的自由电子收到能量后会放射成下图的样子。所以金属会根据构成的原子呈现固有色。



金属反射的本质

(图片文字:太窄了/滚开)

金属的是往哪个方向反射的呢? 这个跟Fresnel是有关联的,这里就不细说了。

Specular
reflection 在入射角和反射角相同时最强?

我们认为镜面反射,既正反射在入射角和反射角相同时最强,但那不是事实。这是根据表面的roughness 而变化的。这也是跟 Fresnel 有关系。

总而言之,普通材质上specular 不进行specular reflection,会进行有一点偏离的反射。这就是off-specular reflection 。最强烈的部分是off-specular
peak 。翻译过来大概是”超过specular reflection范围的反射” 。



Off-specular
reflection 的例子: 离贴地角越近,
specular 方向 ( M )就越跟specular
reflection角不一样。

参考资料:https://en.wikipedia.org/wiki/Diffuse_reflection

카테고리:tutorials

Tagged as:

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Google photo

Google의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중