一种基于环境光照探针的实时渲染方法及装置制造方法及图纸

技术编号:17140276 阅读:17 留言:0更新日期:2018-01-27 15:19
本发明专利技术公开了一种基于环境光照探针的实时渲染方法。利用一组环境光照探针分别获取光照信息,然后对这一组光照信息分别进行遮挡影响修正,最后利用修正后的光照信息进行被渲染物的渲染计算;遮挡影响修正具体如下:对于每个环境光照探针,将该探针与被渲染物体上的多个预设不同位置点分别用直线段连接;根据直线段与其他物体是否相交来为每条直线段进行赋值:相交则赋值为0,否则,赋值为1;以直线段赋值之和与直线段总数量之比作为遮挡影响修正系数,遮挡影响修正系数与该环境光照探针所获取的光照信息的乘积即为该环境光照探针遮挡影响修正后的光照信息。本发明专利技术还公开了一种基于环境光照探针的实时渲染装置。本发明专利技术可使渲染效果趋近实际情况。

A real-time rendering method and device based on environmental illumination probe

The present invention discloses a real-time rendering method based on the environmental illumination probe. Using a set of environmental light probes to obtain illumination information, then the group of light information were occlusion correction, finally using the modified illumination information is rendered from rendering; occlusion correction as follows: for each light probe, a plurality of different points of the preset position the probe and render objects respectively with straight line connection; according to whether the intersection of line segments and other objects for each line segment assignment: intersect the value 0, otherwise, the value 1; taking a line segment assignment and the total number of line segments as the ratio of occlusion correction coefficient, product occlusion correction the coefficient and the ambient light probe the light information for the environmental light probe occlusion modified illumination information. The invention also discloses a real-time rendering device based on the environmental illumination probe. The invention can make the rendering effect close to the actual situation.

【技术实现步骤摘要】
一种基于环境光照探针的实时渲染方法及装置
本专利技术涉及一种图像的渲染方法,尤其涉及一种基于环境光照探针的实时渲染方法,属于计算机图像处理

技术介绍
环境光照探针(lightprobe)是一种光照渲染技术,其基本原理顾名思义,是指在场景中布置一系列记录从四周各个方向接收到的光照强度的“采样点”(即环境光照探针),收集从四周各个方向接收到的光照强度(光照信息),将光照信息作用到被渲染的模型上。环境光照探针记录了周围环境中的光照信息,在实时渲染时用它记录的光照信息影响被渲染物体的最终光照效果。该技术由于不会像全局实时光照那样太多的耗损性能,从而实现了与静态物体,静态场景的实时融合效果。环境探针生成周围光照强度信息以及作用于被渲染物体的基本原理可以参考GPUGems2中的Chapter10.Real-TimeComputationofDynamicIrradianceEnvironmentMaps(中文译本:GPU精粹2——高性能图形芯片和通用计算编程技巧中的第10章动态辐照度环境映射实时计算)以及该文献后面附带的其他参考文献。但是,现有环境光照探针实现方法没有考虑探针与被渲染物体间是否有遮挡。例如,有一个红色光源和被渲染物体之间隔了一堵墙,被渲染物体在墙的右侧,红色光源在墙的左侧,在墙左侧有一个探针,这个探针记录的光照数据里包含了红色光源的光照,导致被渲染物体受到了这个红色光源的影响,而在真实世界中,因为墙阻挡了红色光源的光线,红色光源应该无法照射到被渲染物体。因此,有必要对现有基于现有环境光照探针的实时渲染技术进行改进,充分考虑遮挡的影响,使得基于光照探针的渲染结果更真实可信,并且满足实时渲染的性能要求。
技术实现思路
本专利技术所要解决的技术问题在于克服现有技术不足,提供一种基于环境光照探针的实时渲染方法,根据遮挡情况对环境光照探针的光照信息进行修正,从而调整环境光照探针对被渲染物体的光照影响程度,使得最终渲染效果更趋近于真实环境。本专利技术具体采用以下技术方案解决上述技术问题:一种基于环境光照探针的实时渲染方法,利用一组环境光照探针分别获取被渲染物体的与环境光照探针一一对应的一组光照信息,然后对这一组光照信息分别进行遮挡影响修正,最后利用修正后的光照信息进行被渲染物的渲染计算;所述遮挡影响修正具体如下:对于每个环境光照探针,将该环境光照探针与被渲染物体上的多个预设不同位置点分别用直线段连接;根据直线段与其他物体是否相交来为每条直线段进行赋值:与其他物体相交,直线段赋值为0,否则,赋值为1;以该环境光照探针的直线段赋值之和与直线段总数量之比作为该环境光照探针的遮挡影响修正系数,该遮挡影响修正系数与该环境光照探针所获取的光照信息的乘积即为该环境光照探针遮挡影响修正后的光照信息。进一步地,该方法还包括对遮挡影响修正后的光照信息进行距离影响修正,具体如下:设环境光照探针与被渲染物体间的平均距离为D0,第i个环境光照探针与被渲染物体间的距离为Di,则以2D0/(D0+Di)作为距离影响修正系数,用距离影响修正系数乘以第i个环境光照探针的遮挡影响修正后的光照信息;或者,设环境光照探针与被渲染物体间的最大距离为Dmax,第i个环境光照探针与被渲染物体间的距离为Di,则以(Dmax-Di)/Dmax作为距离影响修正系数,用距离影响修正系数乘以第i个环境光照探针的遮挡影响修正后的光照信息。优选地,所述被渲染物体上的多个预设不同位置点包括位于被渲染物体轮廓线上的多个不同位置点。优选地,所述位于被渲染物体轮廓线上的多个不同位置点将以被渲染物的中心点为圆心的圆周基本等分。优选地,所述被渲染物体上的多个预设不同位置点还包括被渲染物的中心点。优选地,所述被渲染物体上的多个预设不同位置点包括被渲染物被拆分为多个分块后的每个分块的中心点。优选地,在进行所述渲染计算时,利用以下公式计算被渲染物的光照信息E:其中,M为环境光照探针的总数;Wi为第i个环境光照探针的总的修正系数;E″为第i个环境光照探针的修正后光照信息。根据相同的专利技术思路还可以得到以下技术方案:一种基于环境光照探针的实时渲染装置,该装置包括:一组环境光照探针,用于分别获取被渲染物体的与环境光照探针一一对应的一组光照信息;遮挡影响修正模块,用于对环境光照探针所获取的这一组光照信息按照以下方法分别进行遮挡影响修正:对于每个环境光照探针,将该环境光照探针与被渲染物体上的多个预设不同位置点分别用直线段连接;根据直线段与其他物体是否相交来为每条直线段进行赋值:与其他物体相交,直线段赋值为0,否则,赋值为1;以该环境光照探针的直线段赋值之和与直线段总数量之比作为该环境光照探针的遮挡影响修正系数,该遮挡影响修正系数与该环境光照探针所获取的光照信息的乘积即为该环境光照探针遮挡影响修正后的光照信息;渲染计算模块,用于利用修正后的光照信息进行被渲染物的渲染计算。进一步地,该装置还包括:距离影响修正模块,用于对遮挡影响修正后的光照信息按照以下方法进行距离影响修正:设环境光照探针与被渲染物体间的平均距离为D0,第i个环境光照探针与被渲染物体间的距离为Di,则以2D0/(D0+Di)作为距离影响修正系数,用距离影响修正系数乘以第i个环境光照探针的遮挡影响修正后的光照信息;或者,设环境光照探针与被渲染物体间的最大距离为Dmax,第i个环境光照探针与被渲染物体间的距离为Di,则以(Dmax-Di)/Dmax作为距离影响修正系数,用距离影响修正系数乘以第i个环境光照探针的遮挡影响修正后的光照信息。优选地,所述被渲染物体上的多个预设不同位置点包括位于被渲染物体轮廓线上的多个不同位置点。优选地,所述位于被渲染物体轮廓线上的多个不同位置点将以被渲染物的中心点为圆心的圆周基本等分。优选地,所述被渲染物体上的多个预设不同位置点还包括被渲染物的中心点。优选地,所述被渲染物体上的多个预设不同位置点包括被渲染物被拆分为多个分块后的每个分块的中心点。优选地,所述渲染计算模块利用以下公式计算被渲染物的光照信息E:其中,M为环境光照探针的总数;Wi为第i个环境光照探针的总的修正系数;E″为第i个环境光照探针的修正后光照信息。相比现有技术,本专利技术技术方案及其进一步改进技术方案具有以下有益效果:本专利技术充分考虑了环境光照探针所获取光照信息对于被渲染物体光照情况的影响程度与环境光照探针与被渲染物体之间遮挡情况的关系,利用简单便捷的算法对环境光照探针与被渲染物体之间遮挡情况进行准确探测,并根据探测结果对环境光照探针所获取的原始光照信息进行修正,从而使得最终渲染效果较大程度地趋近实际情况。本专利技术还进一步根据环境光照探针与被渲染物之间的距离情况对光照信息进行距离影响修正,提升距离较近的环境光照探针所获取光照信息对渲染计算结果的影响程度,降低距离较远的环境光照探针所获取光照信息对渲染计算结果的影响程度,从而进一步提升了渲染效果的真实性。本专利技术算法简单,易于实现,对系统的软硬件要求很低,几乎不产生额外的资源消耗,可充分满足渲染的实时性要求。具体实施方式本专利技术针对现有基于环境光照探针的实时渲染技术未考虑探针与被渲染物体之间遮挡情况的问题,利用简单便捷的方法对环境光照探针与被渲染物体之间遮挡情况进行准确探测,并根据探测结果对环境光照探针本文档来自技高网
...

【技术保护点】
一种基于环境光照探针的实时渲染方法,其特征在于,利用一组环境光照探针分别获取被渲染物体的与环境光照探针一一对应的一组光照信息,然后对这一组光照信息分别进行遮挡影响修正,最后利用修正后的光照信息进行被渲染物的渲染计算;所述遮挡影响修正具体如下:对于每个环境光照探针,将该环境光照探针与被渲染物体上的多个预设不同位置点分别用直线段连接;根据直线段与其他物体是否相交来为每条直线段进行赋值:与其他物体相交,直线段赋值为0,否则,赋值为1;以该环境光照探针的直线段赋值之和与直线段总数量之比作为该环境光照探针的遮挡影响修正系数,该遮挡影响修正系数与该环境光照探针所获取的光照信息的乘积即为该环境光照探针遮挡影响修正后的光照信息。

【技术特征摘要】
1.一种基于环境光照探针的实时渲染方法,其特征在于,利用一组环境光照探针分别获取被渲染物体的与环境光照探针一一对应的一组光照信息,然后对这一组光照信息分别进行遮挡影响修正,最后利用修正后的光照信息进行被渲染物的渲染计算;所述遮挡影响修正具体如下:对于每个环境光照探针,将该环境光照探针与被渲染物体上的多个预设不同位置点分别用直线段连接;根据直线段与其他物体是否相交来为每条直线段进行赋值:与其他物体相交,直线段赋值为0,否则,赋值为1;以该环境光照探针的直线段赋值之和与直线段总数量之比作为该环境光照探针的遮挡影响修正系数,该遮挡影响修正系数与该环境光照探针所获取的光照信息的乘积即为该环境光照探针遮挡影响修正后的光照信息。2.如权利要求1所述方法,其特征在于,该方法还包括对遮挡影响修正后的光照信息进行距离影响修正,具体如下:设环境光照探针与被渲染物体间的平均距离为D0,第i个环境光照探针与被渲染物体间的距离为Di,则以2D0/(D0+Di)作为距离影响修正系数,用距离影响修正系数乘以第i个环境光照探针的遮挡影响修正后的光照信息;或者,设环境光照探针与被渲染物体间的最大距离为Dmax,第i个环境光照探针与被渲染物体间的距离为Di,则以(Dmax-Di)/Dmax作为距离影响修正系数,用距离影响修正系数乘以第i个环境光照探针的遮挡影响修正后的光照信息。3.如权利要求1所述方法,其特征在于,所述被渲染物体上的多个预设不同位置点包括位于被渲染物体轮廓线上的多个不同位置点。4.如权利要求3所述方法,其特征在于,所述位于被渲染物体轮廓线上的多个不同位置点将以被渲染物的中心点为圆心的圆周基本等分。5.如权利要求3或4所述方法,其特征在于,所述被渲染物体上的多个预设不同位置点还包括被渲染物的中心点。6.如权利要求1所述方法,其特征在于,所述被渲染物体上的多个预设不同位置点包括被渲染物被拆分为多个分块后的每个分块的中心点。7.如权利要求1或2所述方法,其特征在于,在进行所述渲染计算时,利用以下公式计算被渲染物的光照信息E:其中,M为环境光照探针的总数;Wi为第i个环境光照探针的总的修正系数;E″为第i个环境光照探针的修正后光照信息。8.一种基于环境光照探针的实时渲染装置,其特...

【专利技术属性】
技术研发人员:刘捷郝展陆利民柳尧顺
申请(专利权)人:苏州蜗牛数字科技股份有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1