计算机图形学入门X
Ray Tracing 2 (Acceleration & Radiometry)
一、Spatial Partitons
- 均匀分割会导致在稀疏场景浪费较多空间,因此考虑在稀疏处减少划分,密集处增加划分
- 三种不同的分割方法
- Oct-Tree 八叉树(二维空间实际上是四叉树)
- KD-Tree 不停在空间中二划分(x,y方向循环分割),形成类似二叉树的结构(三维空间则是沿x,y,z方向循环分割)
- BSP-Tree
二、Object Partitons & BVH
Bounding Volume Hierarchy(BVH):将空间中的物体通过递归不断的分成两堆并重新计算其包围盒,直至包围盒内的物体数量足够少(同时应该保证包围盒之间重叠的部分尽可能少)
如何有效划分节点:
- 选择不同的方向循环划分,得到的结果更均匀
- 每次划分选择最长的轴,通过这种方式使得到的结果更均匀
- 可以用中位数作为划分依据,保证划分后的包围盒内物体数量相似(树的深度更小)
- 当某一节点内的物体数量达到规定值停止划分
BVH Traversal
Intersect(Ray ray, BVH node) { if(ray misses node.bbox) return; if(node is a leaf node) { test intersection with all objs; return closest intersection; } hit1 = Intersect(ray, node.child1); hit2 = Intersect(ray, node.child2); return the closer of hit1,hit2; }
三、Basic radiometry(辐射度量学)
- Blinn-Phong模型未详细考虑在光线传播过程中的能量损失,我们需要更精确地定义光的传播以及能量损失等,因此引入辐射度量学
- 先记住几个物理量
- Radiant flux 辐射通量
- intensity 强度
- irradiance 辐照度
- radiance 辉光度?
- Radiant Energy and Flux(能量/功率)
- Radiant intensity(光强)
- Angles and Solid Angles
- Angles 圆中扇形弧长除以半径 单位(radians)
- Solid Angles 球体中椎体球面积除以半径平方 单位(steradians)
(下接 计算机图形学入门XI)
计算机图形学入门X
https://baifabaiquan.cn/2021/03/24/计算机图形学入门X/