阴影映射/贴图Shadow Mapping

又叫光照贴图Light Mapping
在三维计算机图形中加入阴影的过程。
特点:体积大,不减少帧速率。

从光源的位置看去,即光源所在的点以及光的发射方向,所有能够看到的物体都处在光照下,但是物体的背面和被遮挡的物体处于阴影中。

光照场景进行渲染,保存能够看到的物体表面的深度,即为阴影图
然后,正常场景中的每个点都与这个深度图进行比较,判断场景中的每个点是否能够被光照射到,从而进行正确的渲染。

阴影图的产生

1.从光源的视角渲染场景
分点光源和定向光源
即将摄像机设置到光源所在的位置

根据这个结果提取 保存深度缓冲
将每个可以看见的片元,即没有被遮挡的片元到光源的距离记录到一副纹理图的对应像素中。

将摄像机恢复到原来的位置,渲染时将阴影的纹理按照投影贴图的方式应用到场景中。

实际距离大于最近距离,片元处于阴影中
实际距离的计算 为何会出现ZB>ZA?
绘制每个片元时,根据投影贴图纹理采样的结果换算出光源与此片元连线中距光源最近的片元距离(ZA),再计算出此片元距光源的实际距离(ZB)。若ZB〉ZA,则需要绘制的片元处于阴影中,采用阴影的颜色着色,否则此片兀不在阴影中,进行既定的光照着色。

你可能感兴趣的:(阴影映射/贴图Shadow Mapping)