课上slides所说的采样半径是按照像素点的个数来说的,如5*5和7*7。但是在texture中不能离散地去取像素点,那这时采样半径应该是多少?我初步的想法是按照分辨率来,shadowmap的分辨率是2048*2048,所以5个像素点对应在纹理上的宽度为5.0/2048.0 \approx 2e-3。
我按照这个宽度乘上圆盘采样函数给出的采样点得不到作业中样例的结果,边缘的模糊程度不高。但将它调整变大以后出现了很严重的自遮挡和重影现象,这应该是由于半径过大造成的。
所以我想知道这里应该怎么调整半径呢,或者是我的算法有问题?
PS:我使用了EPS来避免自遮挡,取值为1e-4
Attachments:
You must be
logged in to view attached files.