APP下载

基于RBF神经网络的全局光照实时绘制

2021-11-17刘晓芸姚承宗曾晓勤

计算机仿真 2021年9期

刘晓芸,姚承宗,曾晓勤

(河海大学计算机与信息学院,江苏 南京 211100)

1 引言

在真实感图形绘制中,全局光照能够为场景提供更为丰富的光影效果,通过计算光线的多次反射、折射能够产生更为逼真的光影细节。早期实现全局光照绘制的算法主要有光线跟踪[1]、辐射度[2]、光子映射[2]等。这些基于间接光照的算法,需计算光线在物体之间的多次反射、折射,与光源特性、场景中物体的物体特性以及物体的相对空间位置等有关,因而计算量巨大。

随着可编程GPU出现,涌现出一些使用GPU对全局光照进行加速的算法。如周昆[1]等提出了在CUDA上构建KD树的新算法,核心是对KD树中的大结点和小结点分别处理,该方法能够充分利用GPU的并行计算能力,明显提高渲染速度。但大结点分割质量比较低,而且排序过程的计算量比较大。Wang等人[5]提出一种基于GPU的分割数据采样和插值的全局光照方法,该方法通过自适应的K值聚类,将场景分割成条理分明的簇,对每一个簇使用基于GPU的光子图法来计算其辐照度,最终将每一个光子图切片整合。由于分割只进行了极有限次数的采样,该方法会丢失一些几何特征,并且在实现上受限于现存的时序算法。

为了提高渲染速度,有一些通过牺牲渲染精度为代价的方法被提出,如Keller[6]提出将来自一个反射面的反射光线拟合成一组虚拟点光源来简化计算,但这一方法忽视了折射和反射的细节。Dachsbacher[7]通过机器学习的方法,根据不同的能见度对场景进行分层,对能见度较高的层,用精度较高全局光照模型进行计算,对于能见度较低的层,则使用精度较低的模型进行计算。……

登录APP查看全文