2011-08-27 82 views
1

我已经有了环境遮挡的基础知识。我有一个射线摄影师,并且能够均匀地拍摄一个半球的光线。看起来这些是辐射度所需要的基础知识,但我不知道从哪里开始。我是否发现每面有多少光? (我正在使用像Minecraft这样的多维数据集创建我的游戏)之后,我该怎么做?有人可以向我解释光能传递照明吗?

+0

作为一个说明,辐射度往往比光线追踪更难实施,而且通常也比较慢。如果你已经有了ray-cast代码,也许值得探索一个光线追踪渲染引擎?就我所知,有关光线追踪的更多信息和公共论文。如果你选择走这条路,可以看看ompf.org,它是一个从照片真实到实时(你想要的地方)的rt开发者论坛。 – Mranz

回答

1

如果你有兴趣在计算机图形“理论”,我会强烈建议佛利/范达姆:

http://www.amazon.com/Computer-Graphics-Principles-Practice-2nd/dp/0201848406

如果你在它是什么有兴趣,以及它是如何工作,维基百科有一个伟大的文章(视觉例子和数学方程):

http://en.wikipedia.org/wiki/Radiosity_%283D_computer_graphics%29

而对于一个过于简单化的一行,我想你可以说“光能传递是仁更复杂的技术在光线追踪图像中环境照明“。

IMHO ...

3

光能传递,简单来说,是一个两个阶段的算法来计算照明。 它的工作原理如下:

第一阶段:对于场景中的每一对多边形,计算“他们可以看到多少对方”。例如。采取立方体:所有的面孔都看不到立方体的另一面。如果将立方体倒置到一个房间:相对的内壁完全看到彼此。

第二阶段:利用这种“可见性信息”,即所谓的“外形因素”,您现在可以逐步将光能分散到现场。在迭代0时,所有能量都在光源面上,然后转移到其他面上。在随后的迭代中,更多的人脸将能量传输到场景中(间接照明)。

缺点:是否仅漫射照明 强度:一旦计算出来,照明就是独立于视点的,因此静态场景可以“无需重新计算照明”而“走过”。

相关问题