DirectDraw學習篇--GDI與DirectDraw的關係

 

在大多數的Windows編程中,開發者們使用的是Win32的函數以獲得訪問繪圖頁面的能力,例如,使用GetDC函數,可以獲得設備環境(DC?/FONT>Device context)。在獲得設備環境之後,你就可以開始進行對屏幕的繪圖了。Win32的所有圖形函數都是由Windows系統的一個獨立完整的模塊所提供,這就是圖形設備接口(GDI?/FONT>Graphics device interface)。GDI爲計算機用戶和計算機硬件之間提供了一個抽象層,在此層的基礎上,用戶可以通過簡單的調用Win32的圖形函數進行圖形顯示。

GDI

的一大缺憾就是,它不是爲具有高表現力的多媒體軟件和遊戲而設計的,設計者們開發它的主要用途是運行商業應用軟件諸如:Word字處理軟件、Excel電子表格、Explorer瀏覽器等。GDI只提供了訪問系統主存的能力,而不提供直接訪問顯存的能力,並不能從具有某些加速特性的顯卡中獲得其優良特性。簡而言之,GDI對絕大多數的商業軟件來說是相當完美的,但對於多媒體軟件和遊戲來說,它卻是低速和低效的。

另一方面,DirectDraw可以提供給開發者代表了真實顯示內存的繪圖頁面。這意味着,只要你使用了DirectDraw,你就可以直接操縱顯卡上的內存,圖形顯示變得出奇的快速。而且這些頁面代表了顯存中連續的內存塊,使得在頁面中尋址和讀寫變得非常方便。

一句話,DirectDraw就是GDI的升級版 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章