【技术实现步骤摘要】
基于虚拟点光源的三维场景全局光照效果分布式集群绘制方法
本专利技术涉及一种基于虚拟点光源的三维场景全局光照效果分布式集群绘制方法,属于真实感三维场景绘制
技术介绍
三维场景全局光照效果绘制技术在动画电影制作、电脑游戏开发、数字媒体设计、虚拟现实等领域有着重要应用价值。目前已有不少关于三维场景全局光照效果绘制的报道。全局光照可以分成直接光照和间接光照两部分。发表在《ComputerGraphicsForum》2014年33卷1期的论文《ScalableRealisticRenderingwithMany-LightMethods》讲解了使用虚拟点光源实现间接光照效果绘制的方法。该方法首先从面光源随机发射一系列光线,并基于随机走步法跟踪这些光线在三维场景中的传输过程,在光线传输路径与三维场景的几何对象的每个交点处创建虚拟点光源(在光线传输路径的起点处不创建虚拟点光源);然后用得到的所有虚拟点光源照射三维场景,累加各个虚拟点光源对可视场景点产生的直接光照值即得到面光源对可视场景点产生的间接光照值。基于虚拟点光源的三维场景间接光照效果绘制存在的一个问题是,虚拟点 ...
【技术保护点】
基于虚拟点光源的三维场景全局光照效果分布式集群绘制方法,其特征在于:分布式集群系统包含1台控制结点计算机和2
【技术特征摘要】
1.基于虚拟点光源的三维场景全局光照效果分布式集群绘制方法,其特征在于:分布式集群系统包含1台控制结点计算机和2n台绘制结点计算机,n≥2;在控制结点计算机和所有绘制结点计算机上都保存有相同的三维场景数据和虚拟相机观察参数;在控制结点计算机的控制下,首先在各个绘制结点计算机上基于随机走步法跟踪NS条从面光源发出的随机光线传输路径,为随机光线传输路径与三维场景的几何对象的每个交点关联一个虚拟点光源;然后各个绘制结点计算机把产生的虚拟点光源数据通过网络发送给控制结点计算机,控制结点计算机把接收到的来自所有绘制结点计算机的虚拟点光源数据合并在一起,利用矩阵行列采样技术从所有虚拟点光源中随机选择一部分用来实际照射三维场景,并把这些被选中的虚拟点光源数据通过网络发送给各个绘制结点计算机;控制结点计算机负责绘制面光源照射三维场景时的直接光照效果;控制结点计算机把要绘制的虚拟相机拍摄的画面像素区域等分成行、列的子块,表示对x向下取整,每个子块的像素对应的间接光照效果由一个绘制结点计算机来绘制;各个绘制结点计算机在绘制完成相应的像素子块的像素对应的间接光照效果后,把绘制结果通过网络发送给控制结点计算机,最后控制结点计算机把接收到的来自各个绘制结点计算机的间接光照结果以及控制结点计算机绘制三维场景得到的直接光照结果合并成完整的全局光照结果;具体实现步骤如下:提供一种数据结构TVPL,用于存储与虚拟点光源相关的数据;数据结构TVPL包括虚拟点光源所在位置Pos、虚拟点光源所在位置法向量Nrml、虚拟点光源关联的光线传输路径入射方向Vi、虚拟点光源所在位置的双向反射分布函数BRDF、虚拟点光源的光通量Flux共5个成员变量;步骤Step101:启动控制结点计算机、网络交换机和所有绘制结点计算机,使其处于工作状态;控制结点计算机通过网络向各个绘制结点计算机发送开始产生虚拟点光源数据命令,使各个绘制结点计算机根据三维场景数据,基于随机走步法跟踪NS条从面光源发出的随机光线传输路径,并为光线传输路径与三维场景的几何对象的每个交点关联一个虚拟点光源;步骤Step102:对于第m台绘制结点计算机,m=1,2,…,2n,在接收到控制结点计算机发来的开始产生虚拟点光源数据命令后,具体执行如下操作:步骤Step102-1:根据三维场景数据,使用随机走步法,跟踪NS条从面光源发出的随机光线传输路径;对于每条随机光线传输路径,对于该随机光线传输路径与三维场景的几何对象的每个交点Prg,为交点Prg关联一个虚拟点光源,并根据该随机光线传输路径及相关的随机走步跟踪参数计算该虚拟点光源对应的光通量VFLUX,同时创建一个数据结构TVPL类型的变量A001,变量A001与虚拟点光源一一对应,把变量A001的虚拟点光源所在位置Pos成员变量赋值为交点Prg所在位置,把变量A001的虚拟点光源所在位置法向量Nrml成员变量赋值为交点Prg所在位置的表面法向量,把变量A001的虚拟点光源关联的光线传输路径入射方向Vi成员变量赋值为该随机光线传输路径在交点Prg处的入射方向,把变量A001的虚拟点光源所在位置的双向反射分布函数BRDF成员变量赋值为交点Prg所在位置的表面双向反射分布函数,把变量A001的虚拟点光源的光通量Flux成员变量赋值为光通量VFLUX;步骤Step102-2:在第m台绘制结点计算机的存储器中,创建一个列表A002,列表A002用于存储数据结构TVPL类型的变量;令列表A002为空;把在步骤Step102-1中创建的所有数据结构TVPL类型的变量A001添加到列表A002中,把列表A002通过网络发送给控制结点计算机;步骤Step103:在控制结点计算机的存储器中创建一个列表A003,列表A003用于存储数据结构TVPL类型的变量;令列表A003为空;在控制结点计算机的存储器中创建一个列表A004,列表A004用于存储数据结构TVPL类型的变量;令列表A004为空;控制结点计算机把接收到...
【专利技术属性】
技术研发人员:陈纯毅,杨华民,蒋振刚,李岩芳,
申请(专利权)人:长春理工大学,
类型:发明
国别省市:吉林,22
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。