[发明专利]一种虚拟舞台环境下实时光照绘制的方法无效
申请号: | 200810240406.1 | 申请日: | 2008-12-19 |
公开(公告)号: | CN101458823A | 公开(公告)日: | 2009-06-17 |
发明(设计)人: | 郝爱民;朱磊;阎峻;何冰 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06T15/50 | 分类号: | G06T15/50 |
代理公司: | 北京科迪生专利代理有限责任公司 | 代理人: | 成金玉;卢 纪 |
地址: | 100083*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 虚拟 舞台 环境 实时 光照 绘制 方法 | ||
1.虚拟舞台环境下实时光照绘制的方法,其特征在于步骤如下:
(1)建立一棵光源层次树,并利用该光源层次树对虚拟舞台环境下的多光源进行聚类;实时绘制出多光源光照下的参与介质,所述的实时绘制方法采用了两遍绘制流程:第一遍绘制时,利用帧缓存对象FBO将参与介质的信息,包括密度、吸收系数和散射系数属性保存在一张3D纹理中;第二遍绘制从该3D纹理中读取保存的介质信息进行绘制;
(2)结合shadow map、shadow volume和ray marching,实时绘制出室内场景参与介质的体阴影,该部分绘制包括以下五个步骤:
a.从步骤(1)中的多个光源出发绘制整个场景深度的shadow map,即阴影图,将其保存至帧缓存对象FBO中;将场景中遮挡物的后表面深度信息的shadow map保存至另一帧缓存对象FBO中;
b.从视点出发计算并绘制shadow volume,即阴影锥,将其保存至帧缓存对象FBO中,帧缓存对象FBO保存视点到shadow volume的最前阴影面片和最后阴影面片的距离;
c.在不考虑参与介质散射作用的情况下,绘制整个场景并将颜色、法向、深度值信息保存至帧缓存对象FBO中;
d.考虑参与介质的散射作用,计算整个场景每一像素具有的散射光照值;
e.合并步骤c和d中生成的结果,采取基于Deferred Shading技术作为优化策略,生成最终的渲染效果;
所述的步骤(1)中使用八叉树这一数据结构来建立一棵光源层次树,并利用该光源层次树对虚拟舞台环境下的多光源进行聚类,具体聚类方法为:首先通过对光源空间进行空间八叉剖分,即可得到该八叉树的八个孩子节点,然后判断各孩子节点的包围盒中是否有真实光源,若有,则继续对其进行剖分,否则停止剖分;
所述使用八叉树的数据结构来定义所使用的光源层次树的方法为:首先构造光源树的一个根节点,并用该结点初始化一棵八叉树结构的光源层次树,同时在对光源进行初始化时将光源的位置、法线、颜色信息存入一张光源列表中,然后将该列表传入光源层次树,并依此对光源空间进行划分,即可通过设置不同的层次参数来对光源树进行聚合,从而达到聚合渲染效果,提高运算速度的目的;
所述的步骤(1)中第一遍绘制时,利用帧缓存对象FBO将参与介质的信息,包括密度、吸收系数和散射系数属性保存在一张3D纹理中的方法为:
(1.1)将介质空间分成宽width*高height*深depth个的小格,申请的相应3D纹理的大小要与介质空间的小格数相对应,每一小格介质信息,包括密度、吸收/散射系数属性分别保存至3D纹理每一片元的不同通道中;
(1.2)将参与介质空间分成深depth个宽width*高height的二维面片,循环深depth个次,每次将不同面片的介质属性信息写入到帧缓存对象FBO的对应层次中,最后加以融合,即可得到保存介质属性的3D纹理。
所述步骤(2)d中,在计算整个场景每一像素具有的散射光照值时,需要分情况进行计算:对于与视点的连线并未穿过shadow volume的像素,采用解析方法进行散射光照值的计算;对于与视点的连线穿过shadow volume的像素,从最后面阴影片到最前面阴影片进行ray marching,采用之前保存的整个场景深度的shadow map确定shadow volume中的某段区域是否被光照,若是,则采用解析方法进行散射光照值的计算,若不是,则基于之前生成的后表面深度信息的shadow map,采用光照衰减函数来计算该区域的散射光照值,所述另一帧缓存对象中保存的后表面深度信息的shadow map用来计算被遮挡点沿照射光线到遮挡物后表面的距离。
2.根据权利要求1所述的虚拟舞台环境下实时光照绘制的方法,其特征在于:所述步骤(2)b中在确定shadow volume的最前阴影面片和最后阴影面片之前,需要首先构造出该shadow volume的所有阴影面片,所述的构造出该shadow volume的所有阴影面片的方法为:首先确定遮挡体shadow caster的轮廓边Silhouette;然后从轮廓边Silhouette出发,利用Geometry Shader构建shadow volume的所有阴影面片。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810240406.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:铜和不锈钢镍基真空钎焊工艺
- 下一篇:跳马