计算机图形学实验9 RayBounding Valume求交和 BVH查找
Github地址
RBV,BVH参考文章
前言
光线追踪的基本流程
- 像素网格生成:首先,我们需要为最终的图像建立一个二维像素网格。每个像素代表屏幕上的一个点,我们的目标是计算出这个点应该显示为什么颜色。
- 发射光线:对于每个像素,从相机的位置出发,沿着该像素指向场景的方向发射一条光线。这条光线是我们想象中的从观察者的眼睛到屏幕这一段空间中的延续。
- 光线与物体的交点检测:我们计算这条光线是否与场景中的任何物体相交,以及交点的位置。在这个例子中,就是判断光线是否击中了立方体的一个面。这通常涉及到射线与几何体求交的数学运算。
- 着色计算:
- 漫反射:如果光线击中了立方体,我们会计算光线击中面后的基本颜色(比如立方体表面的颜色)。这是最简单的光照模型,假设光线均匀地散射到各个方向。
- 光照计算:点光源对这个交点的影响。计算光线从光源到交点的入射角,使用兰伯特余弦定律来确定光照强度。简单来说,