先给一个粗粗的流程,让初学者解开萦绕在心底的谜团。
基本上每一本图形的书,在讲述3D的渲染流程时,无不从顶点及其变换等讲起,直到输出屏幕像素。大家看得多了可能也腻了。这里,不妨换一个角度从最后显示在屏幕上的像素讲起。
既然要讲屏幕像素,就跑不掉先要唠叨下屏幕坐标系了,我们从小屁孩开始学起的坐标系,其实说白了就是一个参照系统,有了这个参照系,我们就可以将物体的相对位置搞得很清楚了。就好象全球定位系统(GPS)依赖地球的经纬度一样。我们要在屏幕上绘制二维的图像,必须要有一个二维的坐标系:原点+X轴+Y轴。
记得当年没学3D时,有个想法一直困扰着我:从显示器上看,三维图像确实和二维的不同啊,很有立体感。那么这些三维图像在绘制时,是把图像中的场景绘制成三维的了吗?“应该是吧,要不怎么会立体呢?。”这是当时我们几个菜鸟的共同答案。
其实大错特错了,我们的显示器是二维平面的,正如我们的视网膜。三维渲染,正是通过计算机模仿,大千世界在人眼中成像的过程来实现的,最后输出给显示器的永远是二维的像素信息(颜色)。只不过限于目前的主流硬件配置和图形学的发展水平,不能完美的模拟罢了。所以每当新一代的显卡问市,新的游戏引擎推出,我们就会感觉到画面更加真实。
想想我们的眼睛,自然明了了。我们的眼睛看一个物体,并不知道它是否是立体的,而是大脑通过以往的经验,分析影像,得出这个物体是立体的。同样显示器上的二维图像,在我们的视网膜上也是二维的,大脑通过分析得出,显示器上显示的物体是立体的。
回来坐标系,显示器的屏幕坐标系,是以屏幕左上角的第一个像素点为原点。水平往右是X轴,垂直往下为Y轴(有开发经验的人都知道),方向全为正向。
既然我们有坐标系了,我们就可以通过控制,屏幕上每个坐标点(像素点)的颜色信息(RGB),绘制出不同的画面了。
(待续)
本文从屏幕像素出发,深入浅出地介绍了3D渲染的基本原理。揭示了显示器虽然是二维平面,但通过计算机模拟人眼成像过程,可以呈现出立体感强烈的图像。文中详细解释了屏幕坐标系的概念及应用。
1万+

被折叠的 条评论
为什么被折叠?



