三維圖形及動畫場景的顯示,就是把所建立的三維空間模型,經過計算機的 復雜處理,最終在計算機二維屏幕上顯示的過程。一般,設計三維圖形軟件要經 過以下步驟: 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
提供雙緩存來制作動畫。計算機在顯示前臺緩存中的畫面同時,在后臺緩存中繪制下 一幀畫面,需要顯示后臺緩存中的畫面時,只要用函數把前后臺緩存交換即可:圖形 變換常用的函數,有:平移、旋轉、放縮。 三維圖形是通過二維視口(屏幕)來觀看的,因此,對三維圖形要進行投影變換 和透視變換。 |