胡说八道

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

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
    使用Monte Carlo Ray Tracing来计算LightMap,保存两份场景的数据,一份是几何描述用于光线跟踪,一份是三角形表示用于得到和保存LightMap.我们知道Monte Carlo Ray Tracing基本的做法是对于路径上的每个点计算直接光照.由于我们需要得到的是和视点无关的数据,我们每条光线第一个交点计算的时候使用Diffuse的BRDF属性来计算,后面的每个交点都使用正确的BRDF来计算.我们最终渲染的时候,再通过BRDF属性计算出正确的光照亮度.

    步骤是首先我们对于每一张Texture,我们将Texture摆放到我们的渲染屏幕上,对于Texture中的每一个像素计算在物体的几何位置,将视点到像素的方向矢量转换到世界坐标中开始计算光线跟踪.得到的亮度值保存到LightMap中.

    每个顶点保存一个Shade Normal,也就是按照光照强度混合的场景中的光源到顶点的矢量,用于计算一BRDF后的亮度。

    现在还只是一个很初步的想法。
posted on 2004-12-29 12:30  胡说八道  阅读(1395)  评论(0编辑  收藏  举报