CBFR和CBDR
https://zhuanlan.zhihu.com/p/66884611
https://zhuanlan.zhihu.com/p/66168753
分块、分簇(tiled/clustered)渲染是上个世代提出来的渲染技术,已经有些年头了,其目的是在计算光照对光照进行裁剪,以提升场景中光源较多时的性能表现。
分块着色(tiled shading)
分块的思想就是将屏幕分成一个个相同大小的块,每个块都各自保存一个和这个块相交的光源的list,我们先用计算着色器将每个光源和每个tile求交,把结果保存到tile的light list里面,然后在着色的时候取出来用,只渲染保存在light list里面的光源,这样一来就达到了对光照做剔除的效果。
下面这张图更好地表达tiled shading的意思,屏幕被划分成一个一个的tile,然后光源分别与这些范围求交,然后把相交的光存在对应tile的list里面,最后只渲染这个list里的光。
这里把分块的工作交给了计算着色器,并且每个tile的大小选择的是16x16。