阴影映射

Shadow Mapping:在某一个点,眼睛是可以看到,但光线无法达到这个点,这个点就在阴影里,如果光线也能达到这个点,这个点就不在阴影里

但这种阴影是硬阴影,即点要么在阴影内,要么不在内。适用于点光线。

 

实际做法:Pass 1:在光源处有一个摄像机,和一个记录深度值的平面Shadow Map,向场景中观看,记录每一个像素的深度值

 

 Pass 2:从实际相机看向场景,把看到的每一个物体向光源处的平面投影,比较投影的深度值和光源平面记录的深度值是否相同,如果相同,则不在阴影内,如果不同,则在阴影内。

 

在实际场景中,Shadow Map的大小会造成一些问题,过小会造成锯齿,过大会浪费性能,上述的两个深度值比较也是一种问题,因为都是用flaot来存储

 

 

posted @ 2022-08-16 17:10  捞的不谈  阅读(53)  评论(0编辑  收藏  举报