[发明专利]基于虚拟球形光源的多光源渲染方法在审
申请号: | 201410369791.5 | 申请日: | 2014-07-30 |
公开(公告)号: | CN104200512A | 公开(公告)日: | 2014-12-10 |
发明(设计)人: | 张根源 | 申请(专利权)人: | 浙江传媒学院 |
主分类号: | G06T15/50 | 分类号: | G06T15/50;G06T15/55;G06T15/60 |
代理公司: | 杭州天勤知识产权代理有限公司 33224 | 代理人: | 胡红娟 |
地址: | 310028 浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 虚拟 球形 光源 渲染 方法 | ||
技术领域
本发明涉及计算机图形领域,尤其涉及一种基于虚拟球形光源的多光源渲染方法。
背景技术
在具有多个光泽面的复杂场景中计算全局照明效果是渲染研究领域一个长期未解决的问题。一个通常的解决办法是将全景照明问题转化为多光源照明问题,基于多光源的渲染算法通过生成大量虚拟点光源(VPL)来拟合非直射照明以及这些光源对应的阴影面。在全局照明路径空间模式中,这些方法创建虚拟点光源对应的任意长度的光子路径和可见表面样本的一个对应长度的相机子路径。
计算相机与光子路径的连接就是多光源法与其他方法不同的地方。最初的多光源技术,立即辐射度,使用可见阴影映射将所有光源和所有表面样本连接。最近有一些改良方法被发表出来。针对动画序列Lainet al提出了增量立即辐射度,在每一帧中只有一部分阴影映射被计算。矩阵行列采样只从大的光表面连接矩阵对一小部分行和列进行采样。光切法对光或表面样本集上进行分层以获得连接计算的可扩展性。Ritschel等人使用近似阴影图来进行渲染加速。
现有技术的多光源法所采用的光源为点光源,使用点光源在某些场景下会引入失真的问题。导致失真的原因有两个,第一:生成的虚拟点光源只能是漫反射的,所以光泽表面的光反射被忽略了。第二,点光源的光束集中,多个点光源存在的情况下,会造成照度尖峰,导致某些位置的光照强度要显著大于其他地方,为了防止夹角引起的照度尖峰,虚拟点光源的贡献范围需要被限制。这些方法在漫反射场景下提供良好的视觉效果,但在有高光材料的场景下,使用虚拟点光源进行多光源照射法会造成照明效果的缺失。
因此,现有多光源法所带来的失真问题亟需得到解决。
发明内容
本发明提供了一种基于虚拟球形光源的多光源渲染方法,提高了针对场景中光泽(glossy)材料的渲染效果,提升了场景的整体渲染效果。
一种基于虚拟球形光源的多光源渲染方法,包括如下步骤:
步骤1,根据场景建立各个虚拟球形光源;
步骤2,计算每个虚拟球形光源在采样面上单个点的光照强度;
步骤3,将每个点在所有虚拟球形光源照射下的光照强度进行叠加,得到最终的渲染结果。
本发明通过建立球形光源,避免因点光源造成照度尖峰或者为避免照度尖峰而限制虚拟点光源的贡献范围,从而避免了照明效果失真。
建立虚拟球形光源需要确定球心以及各球体的半径,可选的,步骤1具体包括:
步骤1-1,采用双向路径追踪法确定各个虚拟球形光源模型的球心位置;
步骤1-2,根据场景中所设定的光的局部密度确定各个虚拟球形光源模型的半径。
其中光的局部密度是指在虚拟球形光源分布区域内虚拟球形光源的数量,其由场景本身决定,在建立好场景后,光的局部密度确定。
步骤1-2具体方法为,对于每个虚拟球形光源,将其球心作为搜索的球心,以预设的搜索步长作为初始搜索半径向周围进行搜索,不断按搜索步长扩展搜索半径,直至球体内包含预设数目的邻近虚拟球形光源球心,将最终所得的搜索半径乘以指定系数作为该虚拟球形光源的半径,其中包含在球体内的邻近虚拟球形光源球心数目根据场景所设定的光的局部密度设定。
其中搜索步长以及球体内所包含的邻近虚拟球形光源球心数目为预设数目,具体根据计算机的处理能力以及精确度需要确定。系数的指定需要综合考虑渲染效果与计算复杂度因素。
步骤2中,对于采样面上的点x,其在观察方向v上的光照强度的计算公式为:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江传媒学院;,未经浙江传媒学院;许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410369791.5/2.html,转载请声明来源钻瓜专利网。