前几天一直对用Stencil Buffer来判断物体是否位于Shadow Volume中的原理有些模糊,今天在喝公司的“立顿”红茶时突然顿悟了,有点坐禅的感觉,呵呵!
基本原理就是,在绘制正对视点的阴影体的面时,让Stencil Buffer加1;在绘制背对视点的阴影体的面时,让Stencil Buffer减1,这样在阴影体中的像素的stencil值就为1,其他的像素stencil值就为0。最后,把所有的stencil值不为0的像素利用alpha混合的方式,使其亮度降低,这样就达到绘制阴影的效果。
本文阐述了使用Stencil Buffer来判断物体是否处于Shadow Volume中的方法。通过在绘制面向摄像机的阴影面时增加Stencil值,在背离摄像机时减少该值,使得位于阴影体内的像素拥有不同于外部的Stencil值。最后,通过Alpha混合降低所有非零值像素的亮度,实现阴影效果。
5831

被折叠的 条评论
为什么被折叠?



