请选择 进入手机版 | 继续访问电脑版

Games101 计算机图形学课程笔记: Lecture14 Ray Tracing 2

[复制链接]
密战 发表于 2021-1-1 10:32:59 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
目次



加速布局

对AABB布局进行优化来加速光线追踪的速度


  • 匀称网格(Uniform grids)
  • 空间划分(Spatial partitions)
匀称空间划分(Uniform Spatial Partitions)



  • 对整个空间用小格子进行划分,判断哪个格子与物体的外貌相交。

  • 先判断格子与光线是否相交,若相交,进一步再判断格子里的物体是否与光线相交。

  • 可以通过格子的布局分列很快求出与光线相交的格子。因此这种方法可以提高算法的速度。
  • 当格子过大大概过小时,效果都欠好,因此根据履历,格子的数量由以下公式决定(格子数量 = 常数C×场景中物体的数量)

PS:就地景中物体分布不匀称时,不适合使用这种方法。
空间划分

空间划分例子



  • Oct-Tree:八叉树(在二维是四叉树)
  • KD-Tree:每次划分只沿着一条轴砍一刀,分成两块。竖直和水平在树的条理中瓜代。例:第一层一个节点水中分割,第二层两个节点竖直分割。
  • BSP-Tree:二分法,每次选一个方向将空间分割开。
KD-Tree

KD-Tree将空间划分为一个二叉树布局。
KD-Tree存储数据布局

非叶子节点存储:


  • 划分轴:xyz轴
  • 划分的位置:划分平面的沿轴位置
  • 指向子节点的指针
  • 非叶子节点不存储物体
    叶子节点存储:
  • 对应区域包含的物体
KD-Tree布局中进行光线追踪

对树布局进行逐级判断,判断每个节点表现的包围盒与光线是否有交点。


  • 若一个节点与光线有交点,则其子节点都必须进行下一步判断。
  • 若一个节点与光线没有交点,则可直接忽略该节点及其子节点,不消进行下一步判断。

KD-Tree的缺点



  • KD-Tree很难建立,因为判断三角形和盒子是否相交是困难的。三角形大概三个顶点都不在盒子中,但与盒子相交,这种情况很难判断。
  • 上图一个圆圈与3,4,5节点都相交,则这三个节点都必须存储该圆圈。
物体划分

Bounding Volume Hierarchy(BVH)布局

BVH是将物体划分为多个部分。将多个三角形划分为一堆一堆的,再分别求差异堆的包围盒。

一个物体只会出现在一个节点中。先划分再求包围盒。
包围盒是有大概相交的。为了提高效率,应该让包围盒的相交尽大概小。
总结,BVH过程:


  • 先为整个场景盘算一个包围盒
  • 把包围盒中的物体根据物体数量划分为两个部分
  • 重新盘算划分后的两个部分的包围盒
  • 递归进行盘算
  • 停止条件:如当叶子节点内部有足够少的三角形
如何划分一个节点



  • 选择一个维度来划分
  • 本领1:总是选择最长的轴来进行划分,让最长的轴变短
  • 本领2:选择中间的物体作为划分。

    • 三角形从左到右进行分列,找到中位数三角形进行划分,这样可以使两个节点的三角形数均衡。(快速选择:可在O(n)时间内完成找到第K大的数字)

BVH的存储

非叶子节点存储:


  • 包围盒
  • 子节点指针
    叶子节点存储:
  • 包围盒
  • 包含的物体
BVH算法

空间划分 vs 物体划分

辐射度量学

可以准确的界说光,光与物体的交互,实现真实的光照。
在物理上准确的界说了光的各个属性
Radiant Energy and Flux(Power)



  • Radiant Energy:是光源辐射出来的能量总量(Q),单元是焦耳(J)。
  • Radiant Flux(power) : 是单元时间内光源辐射出的能量,单元是瓦特(W)。

    FLux还可理解为单元时间内通过的sensor(光子)
Radiant Intensity

单元时间内光源向单元立体角(Solid Angles)所辐射出的能量。

Angle:使用弧长来界说,弧长/半径

立体角:三维空间内的角,面积/半径平方

单元立体角:

对于整个球来说,立体角为:

使用立体角可以代表从秋心发出的光线的方向。
Intensity就是光源在任何方向的亮度。将每个立体角方向的randiant Intensity积分得到radiant flux。


来源:https://blog.csdn.net/almost_afei/article/details/111998333
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题

专注素材教程免费分享
全国免费热线电话

18768367769

周一至周日9:00-23:00

反馈建议

27428564@qq.com 在线QQ咨询

扫描二维码关注我们

Powered by Discuz! X3.4© 2001-2013 Comsenz Inc.( 蜀ICP备2021001884号-1 )