当前位置:网站首页>Sampling Area Lights
Sampling Area Lights
2022-07-01 02:28:00 【狂烂球】
Overview
这里只介绍AreaLight的采样,下面默认的Light都是Area Light,Delta Light不在该文范围内。
目的:在path tracing中,Sampling Lights的目的不是为了获得某个光源某个方向的radiance,而是要估计当前path的交点被整个场景所有光源对其产生的irradiance。
样本:任何估计都是通过一个样本去做估计的,那么在Sampling Lights中的样本,就是当前path的交点发射的一个方向。
Integrals over Area
由于计算光源的面积产生的irradiance比计算点半球方向的积分容易很多,所以irradiance的计算可以用光源的面积作为积分计算。
面积和立体角的关系:

从上图可以看出dA和dω的关系:

Sampling Light Source
如前面所说,采样到一个光源后,我们需要估计这个光源的总体irradiance,irradiance是由半球内的立体角积分得到。根据蒙特卡洛方法,我们需要知道这个从这个光源出发到达一点的方向的pdf,最后参与到bsdf的计算去。
下面整理了采样光源的具体步骤。
1)由于场景可能有多过光源,根据光源分布(或可以用均匀采样)采样,需要计算出该光源的pmf。
2)采样光源的具体一个面,计算出该面在光源中的pmf。
3)在该面上随机采样一个点,并和光照点生成射线先做可见性检测。
4)假如该方向可见,计算方向的pdf。
光照方向的pdf推导如下:
采样的AreaLight的面的面积是A,方向是ω,由于pdf(ω)的积分是1,我们有:

根据dω和dA的关系,上面的积分可以从方向转成点的积分:

所以可得到:


把最后这个pdf做irradiance的估计。
必须明白一个原则:样本是什么,就需要计算该样本的pdf,例如如果样本是点,那么pdf就是点的pdf,样本是方向,那么就是方向的pdf。
Reference
边栏推荐
- centos 安装多个版本的php并切换
- DenseNet网络论文学习笔记
- Small program cloud development -- wechat official account article collection
- 详解数据治理知识体系
- How to realize the scene linkage of intelligent lock, lamp and intelligent curtain motor in zhiting?
- 手机edge浏览器无法打开三方应用
- Focusing on green and low carbon, data center cooling has entered a new era of "intelligent cooling"
- Clickhouse 消除由group by产生的间隙
- House change for agricultural products? "Disguised" house purchase subsidy!
- SWT/ANR问题--Native方法执行时间过长导致SWT
猜你喜欢

MnasNet学习笔记

VirtualBox installation enhancements

@ConfigurationProperties和@Value的区别

House change for agricultural products? "Disguised" house purchase subsidy!
![Pytoch -- foundation refers to the north_ II. What high school students can understand [back propagation and gradient descent]](/img/6e/279dbb7a8d7a5ecd240de464c5b8b2.png)
Pytoch -- foundation refers to the north_ II. What high school students can understand [back propagation and gradient descent]

最新微信ipad协议 CODE获取 公众号授权等

CorelDRAW 2022 Chinese Simplified 64 bit direct download

旷世轻量化网络ShuffulNetV2学习笔记

Delete duplicate email
![How to add a condition for an associated table in an SQL statement [null value required or not required]](/img/91/0efbc13597be4dba5b9cf4e8644e35.png)
How to add a condition for an associated table in an SQL statement [null value required or not required]
随机推荐
7_OpenResty安装
项目管理是什么?
How does the property send a text message to the owner?
SAP ALV汇总跟导出Excel 汇总数据不一致
股票开账户如何优惠开户?还有,在线开户安全么?
Video tutorial | Chang'an chain launched a series of video tutorial collections (Introduction)
最新微信ipad协议 CODE获取 公众号授权等
What are the top ten securities companies? In addition, is it safe to open an account online now?
Pycharm 打开远程目录 Remote Host
[JS] [Nuggets] get people who are not followers
Some uses of Halcon array
Pulsar theme compression
开源基础软件公司,寻找一起创造未来的你(API7.ai)
Qu'est - ce que le PMP?
How do I open an account on my mobile phone? Also, is it safe to open an account online?
Rocketqa: cross batch negatives, de noised hard negative sampling and data augmentation
SWT / anr problem - SWT caused by long execution time of native method
@The difference between configurationproperties and @value
P6773 [noi2020] destiny (DP, segment tree merging)
Live shopping mall source code, realize left-right linkage of commodity classification pages