什么是光线追踪?它如何实现实时三维图形?

我们所处的世界充满着由太阳或其它人造光源发射出的数以亿计的光线 。当光照射到物体表面时 , 光线会以各种方式反弹、分散和反射 , 直至最终到达我们的眼睛 。正是这种复杂的交互作用创造了我们的现实"视界" 。光线追踪是一种用于三维(3D)图形的照明技术 , 它可以模拟真实世界中的光线照射方式 。虽然它能产生最逼真的效果 , 但是从传统上看 , 其过程对于计算机而言还是过于复杂 , 以致无法实时创建三维图形 。
如今 , 它被广泛用于为广告和电影创建超逼真的渲染效果 , 但是在这些应用中 , 即使利用当今功能非常强大的计算服务器 , 生成每一帧数据仍需花费数小时 。光线追踪是个时髦词 , 作为实时图形的发展方向 , 它令人们感到非常兴奋(也有人将其视为炒作 , 这取决于你的看法) 。在本文中 , 我们将认识光线追踪 , 并了解实现它的方法 。
简化问题在三维游戏中 , 场景由各种物体组成 , 当这些物体组合在一起时 , 就会形成数百万个三角形 。光线追踪最基本的功能就是发射出一条光线 , 然后沿着它在三维场景中的路径来定位它所到达的第一个物体 , 进而确定应该如何对该物体进行照明 。然而 , 用场景中的每个物体去测试一条光线以确定它们是否相交 , 这样的做法效率太低、计算成本太高 , 完全无法实时进行 。
因此 , 为了使用光线追踪技术 , 我们需要解决这一问题 。

    推荐阅读