亚洲一区亚洲二区亚洲三区,国产成人高清在线,久久久精品成人免费看,999久久久免费精品国产牛牛,青草视频在线观看完整版,狠狠夜色午夜久久综合热91,日韩精品视频在线免费观看

高性能Windows圖形開發(fā)庫WinG

時間:2023-05-01 08:07:58 計算機(jī)論文 我要投稿
  • 相關(guān)推薦

高性能Windows圖形開發(fā)庫WinG

摘 要 該文首先概述高性能Windows圖形開發(fā)庫WinG,然后講解WinG的一些特點及充分發(fā)揮WinG性能所必須遵循的十條原則,最后舉例說明其開發(fā)方法。

一、概述

在Windows下,由于其GDI設(shè)備無關(guān)性、窗口環(huán)境、缺乏通用圖形庫等限制影響了圖形速度。圖形速度慢成為選擇Windows作為游戲平臺的最大障礙。

Windows 95在保留Windows的最大優(yōu)點—設(shè)備無關(guān)性的同時,在Win32 API中新增一個32位調(diào)用CreateDIBSection,使得圖形速度得到很大提高。Microsoft公司意識到圖形速度對于高質(zhì)量軟件的重要性,提

供了WinG(發(fā)音"Win Gee",其中"G"代表游戲(Game))圖形庫。

WinG是為Windows3.1、Windows for Workgroups 3.11、Windows95和Windows NT設(shè)計的一種優(yōu)化的高性能圖形庫,運(yùn)行于386以上的處理器。WinG能在Windows環(huán)境中提供與DOS環(huán)境相當(dāng)?shù)挠螒驁D形性能。程序員可以直接將內(nèi)存中的設(shè)備無關(guān)位圖(DIB)傳送到屏幕,并且提供抖動(halftoning)API,利用標(biāo)準(zhǔn)Microsoft抖動調(diào)色板支持對真彩色的仿真。

二、WinGDC和API

WinG提供一種新型設(shè)備描述表WinGDC,其用法類似于其它設(shè)備描述表,不同的是,程序員可以獲取直接指向WinGDC繪圖面、BITMAPINFOHEADER和顏色表的指針,還可以創(chuàng)建和選擇新的繪圖面或修改現(xiàn)有繪圖面的顏色表。應(yīng)用程序可以創(chuàng)建一個WinGDC和創(chuàng)建一個或多個WinGBitmap用于繪圖。一旦當(dāng)前幀繪圖、DIB組織、Sprite(精靈)組織完成后,就可將WinGDC緩沖區(qū)拷貝到屏幕。這種雙緩沖區(qū)結(jié)構(gòu)減少了閃爍,使屏幕更新更平滑。

WinG API包含如附表所示的函數(shù)和類型。

附表

WinGDC不是調(diào)色板設(shè)備,是RGB設(shè)備。使用WinGSetDIBColorTable,而不是SelectPalette修改設(shè)備的顏色表。

三、WinG調(diào)色板管理

Windows調(diào)色板管理器用于管理多個應(yīng)用程序?qū)ν粋系統(tǒng)調(diào)色板的使用請求。它給每個應(yīng)用程序分配一個虛擬256色的邏輯調(diào)色板,并在必要時將邏輯調(diào)色板中的顏色轉(zhuǎn)換為系統(tǒng)調(diào)色板中的顏色。

所謂對等(Identify)調(diào)色板,就是一個與當(dāng)前系統(tǒng)調(diào)色板精確(1:1)匹配的邏輯調(diào)色板。它不需要進(jìn)行調(diào)色板轉(zhuǎn)換,因此將WinGDC傳送到屏幕上時使用對等調(diào)色板能大大提高傳送速度。

抖動調(diào)色板是一個對等調(diào)色板,其中包含的顏色是經(jīng)過精心挑選的,并進(jìn)行了優(yōu)化使得在8位設(shè)備上通過抖動模擬真彩色。應(yīng)用程序可選取該調(diào)色板并在顯示設(shè)備描述表中實現(xiàn),以便利用WinG提供的抖動技術(shù)。WinG圖形庫提供兩個支持抖動的API:WinGCreateHalftonePalette和WinGCreateHalftoneBrush,利用它們可在8位設(shè)備上仿真出24位真彩色。

四、WinG的DIB方向

1.自下而上DIB

Windows DIB的標(biāo)準(zhǔn)類型是自下而上的DIB,即DIB總是指向內(nèi)存中最底層的掃描線。坐標(biāo)(0,0)對應(yīng)于圖像的左下角,而Windows將(0,0)對應(yīng)于顯示器和設(shè)備相關(guān)位圖(DDB)的左上角,即自下而上DIB的y軸被顛倒了。

對于8位自下而上DIB,屏幕上像素(X,Y)在內(nèi)存中的地址計算如下:

//計算每掃描線實際比特數(shù) DibW

[1] [2] [3] 

【高性能Windows圖形開發(fā)庫WinG】相關(guān)文章:

淺議地籍圖形管理系統(tǒng)的開發(fā)04-27

Interval Finite Element Analysis of Wing Flutter05-01

建立房地產(chǎn)開發(fā)項目庫04-27

Multi-objective optimization design of airfoil and wing05-01

如何用JSP開發(fā)數(shù)據(jù)庫系統(tǒng)04-28

基于UG Mold Wizard的標(biāo)準(zhǔn)件庫的開發(fā)04-27

創(chuàng)建三庫依托三庫--許昌市土地開發(fā)整理經(jīng)驗談04-30

Analysis and Flexible Structural Modeling for Oscillating Wing Utilizing Aeroelasticity04-28

數(shù)據(jù)庫開發(fā)工程師的基本職責(zé)07-16

牧業(yè)氣象監(jiān)測數(shù)據(jù)庫管理系統(tǒng)設(shè)計與開發(fā)04-27