- 相關(guān)推薦
OpenGL for Windows NT及其程序設(shè)計(jì)
OpenGL是在SGI、Microsoft、DEC、IBM和Intel等多家世界著名計(jì)算機(jī)公司的倡導(dǎo)下,基于SGI的GL標(biāo)準(zhǔn),制定的一個通用共享的開放式三維圖形標(biāo)準(zhǔn)。
前幾年,OpenGL雖然是開放式的標(biāo)準(zhǔn),但是只能在具有UNIX操作系統(tǒng)的各種昂貴的工作站之間通用;盡管工作站上的OpenGL性能優(yōu)越、編程方便、生成圖形精美逼真,但是只有少數(shù)人能體會其中樂趣,而令大多數(shù)PC機(jī)用戶望塵莫及。隨著計(jì)算機(jī)技術(shù)的發(fā)展,工作站與PC機(jī)的性能日趨接近。Microsoft公司首先將OpenGL圖形庫鏈接到Windows NT中,目前又將OpenGL動態(tài)庫掛到最新Windows 95上,這樣,廣大PC機(jī)用戶就可充分享受OpenGL的樂趣了。更令人高興的是,目前國內(nèi)外出現(xiàn)了專門對OpenGL進(jìn)行硬件加速的三維圖形加速卡。這樣,普通用戶只
要擁有一臺Pentium 90以上、16MB RAM、520MB以上硬盤容量的PC機(jī)以及一臺43cm以上的大屏幕監(jiān)視器和一塊OpenGL三維圖形加速卡組成的系統(tǒng),就能與圖形工作站相媲美,但價格卻便宜數(shù)十倍。
本文作者一直從事計(jì)算機(jī)圖形應(yīng)用開發(fā)工作。原來是在SGI工作站上利用OpenGL開發(fā)圖形程序,后來又首先在國內(nèi)第一塊三維圖形加速卡AGC-3D上基于Windows NT的Visual C 2.0環(huán)境下繼續(xù)進(jìn)行開發(fā)。在開發(fā)過程中,同一OpenGL程序幾乎不用修改就能在兩個平臺間來回移植,效果甚好。
一、OpenGL特點(diǎn)及功能
OpenGL是一個開放的三維圖形軟件包,它獨(dú)立于窗口系統(tǒng)和操作系統(tǒng),能十分方便地在各平臺間移植。
OpenGL具有七大功能。
(1)建模 OpenGL圖形庫除了提供基本的點(diǎn)、線、多邊形的繪制函數(shù)外,還提供了復(fù)雜的三維物體(如球、錐、多面體、茶壺等)以及復(fù)雜曲線和曲面(如Bezier、Nurbs等曲線或曲面)繪制函數(shù)。
(2)變換 OpenGL圖形庫的變換包括基本變換和投影變換。基本變換有平移、旋轉(zhuǎn)、變比和鏡像四種變換,投影變換有平行投影(又稱正射投影)和透視投影兩種變換。
(3)顏色模式設(shè)置 OpenGL顏色模式有兩種,即RGBA模式和顏色索引(Color Index)。
(4)光照和材質(zhì)設(shè)置 OpenGL光有輻射光(Emitted Light)、環(huán)境光(AmbientLight)、漫反射光(Diffuse Light)和鏡面光(Specular Light)。材質(zhì)是用光反射率來表示。場景(Scene)中物體最終反映到人眼的顏色是光的紅綠藍(lán)分量與材質(zhì)紅綠藍(lán)分量的反射率相乘后形成的顏色。
(5)紋理映射(Texure Mapping) 利用OpenGL紋理映射功能可以十分逼真地表達(dá)物體表面細(xì)節(jié)。
(6)位圖顯示和圖像增強(qiáng) 圖像功能除了基本的拷貝和像素讀寫外,還提供了融合(Blending)、反走樣(Antialiasing)和霧(fog)的特殊圖像效果處理。
(7)雙緩存(Double Buffering)動畫 雙緩存即前臺緩存和后臺緩存,簡而言之,后臺緩存計(jì)算場景、生成畫面,前臺緩存顯示后臺緩存已畫好的畫面。
此外,利用OpenGL還能實(shí)現(xiàn)深度暗示(Depth Cue)、運(yùn)動模糊(Motion Blur)等特殊效果。
二、OpenGL for Windows NT圖形庫
OpenGL圖形庫一共有100多個函數(shù)。其中核心函數(shù)有115個,它們是最基本的函數(shù),其前綴是gl;OpenGL實(shí)用庫(OpenGL utility library,GLU)的函數(shù)功能更高一些,如繪制復(fù)雜的曲線曲面、高級坐標(biāo)變換、多邊形分割等,共有43個,前綴為glu
[1] [2] [3] [4] [5]
【OpenGL for Windows NT及其程序設(shè)計(jì)】相關(guān)文章:
OpenGL及其在DEM可視化中的應(yīng)用04-28
顯卡·什么是OpenGL04-26
基于Windows 2000的多路話音采集壓縮卡驅(qū)動程序設(shè)計(jì)05-02
基于OpenGL的虛擬校園漫游系統(tǒng)的實(shí)現(xiàn)04-29
WINDOWS XP教案04-25
安裝Windows或啟動Windows時鼠標(biāo)不可用06-20
windows及應(yīng)用實(shí)踐報(bào)告04-14
初識Windows的教學(xué)方案01-17
程序設(shè)計(jì)心得11-15