Posted on 2008-08-26 20:14
千張 閱讀(545)
評(píng)論(0) 編輯 收藏 引用 所屬分類(lèi):
圖形學(xué)
初始化Direct3D的步驟:
1.獲得一個(gè)IDirect3D9接口指針,這個(gè)接口用于獲得物理設(shè)備的信息和創(chuàng)建一個(gè)IDirect3DDevice9接口,它是一個(gè)代表我們顯示3D圖形的物理設(shè)備的C++對(duì)象。
2.檢查設(shè)備的技術(shù)特性(D3DCAPS9),搞清楚主顯卡是否支持硬件頂點(diǎn)處理。我們需要知道假如它能支持,我們就能創(chuàng)建IDirect3DDevice9接口。
3.初始化一個(gè)D3DPRESENT_PARAMETERS結(jié)構(gòu)實(shí)例,這個(gè)結(jié)構(gòu)包含了許多數(shù)據(jù)成員,它們?cè)试S我們指定將要?jiǎng)?chuàng)建的IDirect3DDevice9接口的特性。
4.創(chuàng)建一個(gè)基于已經(jīng)初始化好的D3DPRESENT_PARAMETERS結(jié)構(gòu)的IDirect3DDevice9對(duì)象。它是一個(gè)代表我們顯示3D圖形的物理設(shè)備的C++對(duì)象。
參考翁云兵的書(shū)《3D游戲程序設(shè)計(jì)入門(mén)(Directx9)》第二部分第一章初始化Direct3D實(shí)例代碼:
d3dUtility.h/d3dUtility.cpp將初始化Direct3D的四個(gè)步驟封裝起來(lái),封裝在函數(shù)d3d::InitD3D中,返回一個(gè)IDirect3DDevice9指針。每一個(gè)程序都包含d3dUtility.h/d3dUtility.cpp,而在d3dinit.cpp中包含三個(gè)函數(shù)Setup、Cleanup、Display,還有WinMain和WndProc,我們只需要把精力放在d3dinit.cpp上,去完成相應(yīng)的功能。