Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Graphics 为什么我们要将光线跟踪的概念与光栅化区别开来?_Graphics_Raytracing - Fatal编程技术网

Graphics 为什么我们要将光线跟踪的概念与光栅化区别开来?

Graphics 为什么我们要将光线跟踪的概念与光栅化区别开来?,graphics,raytracing,Graphics,Raytracing,据我了解,现代计算机显示器主要以光栅方式显示图像,也就是说,我们在屏幕上看到的都是点或像素。让我困惑的是,我们经常说光线跟踪不是光栅化,但不管3D世界是如何计算的,计算机中渲染的所有东西都不应该最终转换为像素,在屏幕上形成光栅图像吗?或者是因为我误解了一些重要的概念。正如你正确地说的,在计算之后,整个场景被放置在光栅图像中。 在计算每个像素的颜色后,将像素放入光栅。 对于任何渲染方法都是相同的过程。 光线跟踪和光栅化是处理原语和投影上述计算的技术。 在区分光线跟踪和光栅化时,您会问自己如何处理输

据我了解,现代计算机显示器主要以光栅方式显示图像,也就是说,我们在屏幕上看到的都是点或像素。让我困惑的是,我们经常说光线跟踪不是光栅化,但不管3D世界是如何计算的,计算机中渲染的所有东西都不应该最终转换为像素,在屏幕上形成光栅图像吗?或者是因为我误解了一些重要的概念。

正如你正确地说的,在计算之后,整个场景被放置在光栅图像中。 在计算每个像素的颜色后,将像素放入光栅。 对于任何渲染方法都是相同的过程。 光线跟踪和光栅化是处理原语和投影上述计算的技术。 在区分光线跟踪和光栅化时,您会问自己如何处理输入(基本体,主要是三角形)

光栅化是图形管道的一部分,确定原语覆盖的像素。 主要目标是将一组顶点转换为光栅图像。 光栅化更常用,因为它比光线跟踪快得多。 复杂性与原语的数量成正比。 下图显示了使用左上角规则进行光栅化的过程

光线跟踪采用与光栅化不同的方法。 首先,从想象中的摄影机向场景中发射光线。 场景按像素处理,而不是按基本体处理。 这意味着复杂性与分辨率成正比。 其优点是可以模拟反射、折射和散射等光学效果。 光线跟踪的优点是其缺点明显比光栅化慢。 下图显示了光线通过图像平面射入场景的过程

更多信息:


光栅化是将单个几何图元转换为像素/体素/任何内容的过程。。。光线跟踪是将光线穿过整个场景(所有几何体…)(结果并不总是用于给像素着色,也不形成网格)。这两种方法非常不同,光线跟踪只是最近才开始在硬件中实现。此外,几何表示通常也不相同,因为一个用于BR,另一个用于分析。。。