Games202第三讲笔记

第三讲笔记.md

Shadow Mapping

进行两趟操作:

  1. 从光线出发,得到光线可以照射到的范围,得到SM可供之后使用

  2. 从摄像机的角度出发,配合第一趟的SM可以得到当前的位置是否在阴影中

Games202第三讲笔记_第1张图片
Games202第三讲笔记_第2张图片

shadow mapping得到的是硬阴影,但是现实生活中我们希望得到的是软阴影

Percentage Closer Filtering(PCF)

刚开始是用来抗锯齿的,后来发现也可以在软阴影中使用.

注意:

  • PCF不是在硬阴影生成之后在filter的

  • 第一遍的shadow map的生成并没有受到影响

PCF的工作原理:

当判断点P是否在阴影中时,我们取点P及其周围的一个矩阵,分别计算他们是否在阴影中,再将获得的结果进行平均,最终得到阴影的颜色

e.g.

1,0,1

1,0,1

1,1,0

最后得到P点的不透明度为0.667

Games202第三讲笔记_第3张图片

Percentage Closer Soft Shadows(PCSS)

阴影的软硬与阴影与投射物之间的距离有关。距离越短,阴影越锋利,距离远远,阴影越模糊。

Games202第三讲笔记_第4张图片

阴影的软硬取决于我们在PCF中选取的矩阵的大小。矩阵选取的越大,阴影越软,矩阵选取的越小(极端情况就是取1*1),阴影越硬。因此PCSS要根据距离动态地选择矩阵的大小。

Games202第三讲笔记_第5张图片

由相似三角形的关系,我们可以得到矩阵大小的表达式:
在这里插入图片描述

其中的遮挡距离我们取的是平均遮挡距离,由此配合PCF方法完成软阴影。

你可能感兴趣的:(图形学,cg)