【图形学笔记】Lecture10-Radiometry-辐射度量学
Lecture10-Radiometry-辐射度量学
目录
动机:前面的反射模型太粗糙啦…而且很多是经验公式。
几个关键概念:Radiant flux,intensity,irradiance,radiance
光线追踪vs.光栅化
- [局部]光栅化器一次处理一个基本单元,很难确定诸如“A在B的阴影下”之类的事情。
- [全局]射线追踪器处理一条射线,射线知道所有它相交的地方,很容易谈论阴影和其他“全局”照明效果。
一些概念
Solid angles 立体角
立体角(类比于角度=弧长/半径):
Differential solid angle 立体角的导数
平面角(球坐标系):
那么微分立体角(differential solid angle):
绕一圈也很明显有
辐射度量学
Radiant energy is "total # of hits"——辐射能量=所有打到场景的光子个数,用的不多。
Radiant flux (power)
- Radiant flux/power 辐射通量=单位时间内的辐射能量,类似于“光照强度”
Radiant intensity
- 单位立体角的辐射通量
那么
Irradiance
-
辐照度(irradiance)= 单位面积的辐射通量(radiant flux),辐射度也叫辐射通量的密度(Radiant Flux Density)
注意这里的
是有向的,即单位面积和辐射要是垂直的,如果不是垂直的话,则需要算上 Lambert's cosine law,转化成投影的面积。 -
Projected area-Lambert’s Law
- 考虑一条辐射通量
的光线,打入了一个面积为 的面,面的法向量和光线有个夹角 ,那么实际上投影的面的面积只有 ,辐照度
- 考虑一条辐射通量
- 进一步,着色的时候需要乘上一个单位法向量
和(单位)光源方向 的点积。
double surfaceColor( Vec3 N, Vec3 L ){ return max( 0., dot( N, L )); }
Radiance
表示单位时间内,单位面积上,单位立体角向指定长度辐射的能量。
那么Irradiance 的微元
下标
对于最朴素的情况,即
特别地,课件上还提到了一种情况,光源的Radiance都是L,然后投到了球面上的一个区域
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗