三維圖形及動畫場景的顯示,就是把所建立的三維空間模型,經(jīng)過計算機的 復(fù)雜處理,最終在計算機二維屏幕上顯示的過程。一般,設(shè)計三維圖形軟件要經(jīng) 過以下步驟: A.圖元建立三維模型。(以O(shè)penGL(Open Graphics Library)為例,OpenGL 是一個開放的圖形程序庫,它可在UNIX、Windows 95、Windows NT等環(huán)境下運行) B.設(shè)置觀看物體的窗口和觀看點(視點)。 C.設(shè)定各物體的屬性(如色彩、光照、紋理映射等) D.如果要物體動起來,還要進行圖形變換(如幾何變換、視窗變換和投影變換等)。
E.三維圖形的二維化。 流程如下: 利用OpernGL的庫函數(shù), 我們能較容易按步驟實現(xiàn)三維圖形處理軟件的設(shè)計。 1. 建立三維模型 建立三維模型,就是在三維坐標系中畫三維場景。利用畫點(Point)、畫線(Line) 、畫多邊形(Polygon)等函數(shù)可以建立復(fù)雜的空間模型。在表示三維空間時,一般用齊次 坐標(Homogeneous Coordinate)。在實際應(yīng)用時一般把一系列頂點(Vertex )組織起 來以構(gòu)成物體或圖元。 2.置窗口和視口
圖形顯示的區(qū)域稱為顯示窗口。流程順序為: 定義一個窗口一般由以下步驟完成:設(shè)置窗口模式,設(shè)置窗口位置、大小,初始化窗 口,窗口顏色設(shè)置。 清理窗口是指把窗口清成某種顏色。 要觀看場景,也需要一個窗口,即視口。通俗地講,視口變大,場景被放大;視口變 小,場景被縮小。 3.設(shè)置光照 要使物體具有真實感,就要對物體進行光照處理。在計算機圖形學(xué)中,物體的真實 感應(yīng)考慮兩種因素:光源和物體材質(zhì)。
光源:對人眼而言,光線照射物體可以看見兩種光:反射光和透射光,其中反射光 有三個成分:環(huán)境反射、漫反射和鏡面反射。 光源的實現(xiàn)過程為: 常用的有: 環(huán)境光、漫反射光、鏡面反射光、光源位置、點光源聚光指數(shù)、點 光源聚光指數(shù)、點光源發(fā)散角。 材質(zhì):材料的顏色是由物體對R、G、B光的反射率來定義的,它也分為環(huán)境光、 漫反射光和鏡面反射光。 4. 動畫 三維動畫,就是把三維物體通過各種三維圖形變換,把它投影到視口中。OpenGL
提供雙緩存來制作動畫。計算機在顯示前臺緩存中的畫面同時,在后臺緩存中繪制下 一幀畫面,需要顯示后臺緩存中的畫面時,只要用函數(shù)把前后臺緩存交換即可:圖形 變換常用的函數(shù),有:平移、旋轉(zhuǎn)、放縮。 三維圖形是通過二維視口(屏幕)來觀看的,因此,對三維圖形要進行投影變換 和透視變換。 |