前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >渲染方程(1):Radiometry

渲染方程(1):Radiometry

作者头像
Peter Lu
发布2021-10-18 18:07:15
7330
发布2021-10-18 18:07:15
举报
文章被收录于专栏:LETLET

光线的反射,实质是光子在传输过程中的能量转换,传统的Blinn-Phong模型仅仅模拟了这个过程,渲染方程则通过数学模型量化这个反射过程,从而获取基于物理正确的渲染结果。要想理解该方程,则需要具备辐射度量学(Radiometry)的基本知识。

这里,我们认为光的传播是瞬时的,忽略时间的作用;仅考虑光线在传输过程中的粒子特性,而忽略其光波的特性;仅考虑弹性散射,光子碰撞时保持各自的能量,不存在能量不同的光子间能量传递。

能量的单位是焦耳,一个光子对应的能量是:

这里,

是普朗克常量,

是光在介质中的速度,

是该光子对应的波长。

在单位体中,会有一定数量

的光子,假设它们的波长相同,累加所有光子的能量总和则为radiant energy,辐射能:

这些光子都会高速运动,我们通常需要衡量在一定时间内有多少光子穿过这个单位体,称为radiant flux,辐射功率,单位是瓦特W:

考虑到空间,这里还有一个solid angle的概念,称为立体角。立体角可以当作三维空间的弧度来理解,定义是表面积和半径平方的比例:

如上图,则对应一个球对应的立体角,这也解释了全景角为何是720°:

有了如上的定义,我们则可以描述这样的一个过程,当光源向四面八方辐射能量(radiant Intensity),然后在任何一个表面,会接收到的能量(irradiance),以及在这个传播过程中光线的能量(radiance)

图1

Radiant intensity

Radiant intensity是描述一个点光源的能量相对于立体角的分布情况:

这样,如下的一个光源,radiant flux是它的能量,单位是瓦,比如我们买灯泡时,都会关注这个灯泡的功率,瓦,而radiant intensity则对应该光源在某个方向ω上的能量,假设在任意方向上能量均匀分布,则有如下结论:

Irradiance

radiant intensity是单位方向上的能量,而irradiance则对应入射到单位表面积下的能量(对应图1中间):

因此,在类似场景下,irradiance对应的变化如下:

可见,随着半径的增加,立体角并没有变化,intensity不变,而irradiance则随着半径平方(面积)而衰减。

Radiance

Radiance对应能量在单位立体角且在单位面积上的分布。Radiance用于描述光线传输中的能量分布,我们确定一个微表面,再确定一个方向,这样可以描述对应的光线携带的能量。:

这样,我们可以通过radiance和intensity,以及irradiance之间建立关联:

Exiting radiance则相当于一个微表面dA下对应的intensity(方向ω上射出的能量):

Incident radiance相当于仅考虑从某一个方向ω射入的irradiance(

上的能量):

同理,不难理解radiance和irradiance之间的关系,当我们考虑从各个方向进来的radiance,对其积分求和,最终得到整个

表面的irradiance:

这里,

是该微表面对应的半球。基于这些概念,下一篇和大家介绍渲染方程的理解、推导过程。

参考资料

P14~P15 Games101

Path tracing in Production Siggraph 2019

light transport, Advanced Graphics, GMT, Utrecht University

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-10-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 LET 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档