胡说八道

学而不思则罔,思而不学则殆

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
版本号为0.0015 第二个放出版本

 算法描述如下:
 首先我们使用三张1024X1024浮点贴图来保存每个patch的
 Texture1: 辐射度,待辐射能量,ID,待辐射能量*面积
 Texture2: 坐标,面积
 Texture3: 法线,反射率

 每个patch结构保存对应贴图的贴图坐标

 首先初始化我们的patchs

 while()
 {
 对于Texture1,我们对其做Down Sample操作,每次操作保存相关最大的待辐射能量*面积的像素,最终保存在一个1X1的Texture中,最后Lock上面的Texture,CPU取出该最大的patch.

 判断是否继续迭代

 取这个patch为摄像机位置,Render得到一张ID ShadowMap

 渲染一个正方形,分别设置最早3张Texture,发射patch的参数输入到ps的常量寄存器中
 对于每一个像素我们通过ID ShadowMap来得到VIS函数值,计算Fij,计算新的辐射度和待发射能量,并设置发射patch的
 待发射能量=代发射能量*面积=0
 }

 当前这个版本没有作可视判断.只是简单的模拟3个patch的能量的传递

 source:
 ::URL::http://bbs.gzeasy.com/index.php?act=Attach&type=post&id=155835

posted on 2004-12-29 11:16  胡说八道  阅读(551)  评论(0)    收藏  举报