我已经有了环境遮挡的基础知识。我有一个射线摄影师,并且能够均匀地拍摄一个半球的光线。看起来这些是辐射度所需要的基础知识,但我不知道从哪里开始。我是否发现每面有多少光? (我正在使用像Minecraft这样的多维数据集创建我的游戏)之后,我该怎么做?有人可以向我解释光能传递照明吗?
1
A
回答
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时,所有能量都在光源面上,然后转移到其他面上。在随后的迭代中,更多的人脸将能量传输到场景中(间接照明)。
缺点:是否仅漫射照明 强度:一旦计算出来,照明就是独立于视点的,因此静态场景可以“无需重新计算照明”而“走过”。
相关问题
- 1. 有人可以向我解释这个功能吗?
- 2. 有人可以为我解释COMTIMEOUTS吗?
- 3. 有人可以向我解释python-twisted像我五岁吗?
- 4. 有人可以向我解释“如果让”声明是什么?
- 5. 有人可以解释我这种递归吗?
- 6. 有人可以向我解释这个声明是如何排除的吗?
- 7. 有人可以向我解释这段代码吗?
- 8. NSFileHandle fileHandleForReadingFromURL有人可以向我解释这个吗?
- 9. 有人可以向我解释ASP.NET的信任级别吗?
- 10. 有人可以向我解释PHP中的pack()函数吗?
- 11. 有人可以向我解释2D统一坐标系吗?
- 12. 有人可以向我解释这个C++数组吗?
- 13. 有人可以向我解释这个JDBC Exception吗?
- 14. 有人可以向我解释这段代码吗?
- 15. 有人可以向我解释此RegEx吗?
- 16. Javascript - 有人可以向我解释这到底是什么吗?
- 17. 回调&params.require - 有人可以向我解释这些吗?
- 18. 有人可以向我解释这个备份脚本吗?
- 19. 有人可以向我解释这个SQL查询吗?
- 20. 有人可以向我解释此MSDN代码的英文吗?
- 21. 有人可以向我解释ARM按位操作吗?
- 22. 有人可以向我解释这个命令(使ARCH)吗?
- 23. 有人可以向我解释这些Haskell函数吗?
- 24. 有人可以向我解释这个cmake脚本吗?
- 25. 有人可以向我解释这一行的Scala代码吗?
- 26. 有人可以向我解释nVidia GPU架构吗?
- 27. 有人可以向我解释下面的代码吗?
- 28. 有人可以向我解释'sigaction'的工作原理吗?
- 29. 有人可以向我解释这个autohotkey脚本吗?
- 30. 有人可以向我解释这个Java语法吗?
作为一个说明,辐射度往往比光线追踪更难实施,而且通常也比较慢。如果你已经有了ray-cast代码,也许值得探索一个光线追踪渲染引擎?就我所知,有关光线追踪的更多信息和公共论文。如果你选择走这条路,可以看看ompf.org,它是一个从照片真实到实时(你想要的地方)的rt开发者论坛。 – Mranz