三维图形及动画场景的显示,就是把所建立的三维空间模型,经过计算机的 复杂处理,最终在计算机二维屏幕上显示的过程。一般,设计三维图形软件要经 过以下步骤: A.图元建立三维模型。(以OpenGL(Open Graphics Library)为例,OpenGL 是一个开放的图形程序库,它可在UNIX、Windows 95、Windows NT等环境下运行) B.设置观看物体的窗口和观看点(视点)。 C.设定各物体的属性(如色彩、光照、纹理映射等) D.如果要物体动起来,还要进行图形变换(如几何变换、视窗变换和投影变换等)。
E.三维图形的二维化。 流程如下: 利用OpernGL的库函数, 我们能较容易按步骤实现三维图形处理软件的设计。 1. 建立三维模型 建立三维模型,就是在三维坐标系中画三维场景。利用画点(Point)、画线(Line) 、画多边形(Polygon)等函数可以建立复杂的空间模型。在表示三维空间时,一般用齐次 坐标(Homogeneous Coordinate)。在实际应用时一般把一系列顶点(Vertex )组织起 来以构成物体或图元。 2.置窗口和视口
图形显示的区域称为显示窗口。流程顺序为: 定义一个窗口一般由以下步骤完成:设置窗口模式,设置窗口位置、大小,初始化窗 口,窗口颜色设置。 清理窗口是指把窗口清成某种颜色。 要观看场景,也需要一个窗口,即视口。通俗地讲,视口变大,场景被放大;视口变 小,场景被缩小。 3.设置光照 要使物体具有真实感,就要对物体进行光照处理。在计算机图形学中,物体的真实 感应考虑两种因素:光源和物体材质。
光源:对人眼而言,光线照射物体可以看见两种光:反射光和透射光,其中反射光 有三个成分:环境反射、漫反射和镜面反射。 光源的实现过程为: 常用的有: 环境光、漫反射光、镜面反射光、光源位置、点光源聚光指数、点 光源聚光指数、点光源发散角。 材质:材料的颜色是由物体对R、G、B光的反射率来定义的,它也分为环境光、 漫反射光和镜面反射光。 4. 动画 三维动画,就是把三维物体通过各种三维图形变换,把它投影到视口中。OpenGL
提供双缓存来制作动画。计算机在显示前台缓存中的画面同时,在后台缓存中绘制下 一帧画面,需要显示后台缓存中的画面时,只要用函数把前后台缓存交换即可:图形 变换常用的函数,有:平移、旋转、放缩。 三维图形是通过二维视口(屏幕)来观看的,因此,对三维图形要进行投影变换 和透视变换。 |