在有关光线追踪的文章中,总是给出球体的例子,因为它由一个简单的方程定义,但是其他图元呢?当光栅化时,假设任何表面都由三角形近似,这是可以理解的。但如何使用光线追踪来渲染人的脸部尚不清楚;这个相同的表面需要用某种方程来表示吗?也就是说,我想了解在具有光线追踪渲染的引擎中场景是如何定义的,如果在使用经典光栅化渲染的引擎中,场景被定义为一组三角形。
在有关光线追踪的文章中,总是给出球体的例子,因为它由一个简单的方程定义,但是其他图元呢?当光栅化时,假设任何表面都由三角形近似,这是可以理解的。但如何使用光线追踪来渲染人的脸部尚不清楚;这个相同的表面需要用某种方程来表示吗?也就是说,我想了解在具有光线追踪渲染的引擎中场景是如何定义的,如果在使用经典光栅化渲染的引擎中,场景被定义为一组三角形。
事实上,对于光束来说,它面前是怎样的身影,根本不重要。射线所需要的只是它撞击到的表面的一个法线向量。该向量用于计算射线反射的角度,以便射线飞向新的方向。等等,直到满足2个条件中的1个:达到最大追踪深度(反射次数),或者射线飞入深渊,即不再遇到障碍物。接下来,以相反的顺序在撞击点处追踪痕迹,并将材质颜色和照明亮度相加以获得相机上的像素颜色。
就是这样,物体的形状并不重要。