针对现有的预计算辐射传递算法对三维场景限制严格、适合于低频光照环境等问题,提出了一种动态场景的全频阴影绘制算法.在预处理阶段使用球体对三维物体进行拟合,同时对光照函数和BRDF(bidirectional reflectance distribution function)函数进行Harr小波变换;在运行时阶段利用不同基函数的优势,在像素基空间进行多个球体可见性函数的快速合并,在小波基空间进行光照函数、BRDF函数和可见性函数的三乘积分,得到最终的光照值.使用CUDA(computed unified device architecture)实现了该算法,充分利用了图形硬件的最新功能.实验结果表明,阴影绘制质量有很大的提高,可以基本达到实时绘制.
Current PRT (pre-computed radiance transfer) techniques are limited to having 3D static scene, or large low-frequency lights. In this paper, an all-frequency shadow rendering method for dynamic scenes is proposed. In the preprocessing phase, the blocking geometry is modeled as a set of spheres, according to complex 3D model. The lighting and BRDF (bidirectional reflectance distribution function) are projected onto the Harr wavelet basis. At runtime, with the advantage of different basis functions, the product of visibility vectors is computed for blocker spheres in the pixel basis, while the triple product integral of lighting, BRDF and visibility is computed in the Harr basis. CUDA (computed unified device architecture) is used to implement this method, which sufficiently utilizes the new features of GPU (graphics processing unit). Experiments show that the method greatly improves vision quality and satisfies real-time requirements.