摘要: 通常可以用標(biāo)準(zhǔn)的Direct3D方法CreateDevice()創(chuàng)建一個(gè)Direct3D設(shè)備,這個(gè)方法需要一個(gè)有效的顯示適配器、設(shè)備類型(硬件抽象層設(shè)備或參考設(shè)備)、窗口句柄、運(yùn)行標(biāo)志(軟件/硬件頂點(diǎn)運(yùn)算模式和其他驅(qū)動(dòng)標(biāo)志)和提交參數(shù)。更重要的是,結(jié)構(gòu)體 D3DPRESENT_PARAMETERS有許多成員指定了后臺(tái)緩沖區(qū)的設(shè)置、多重采樣設(shè)置、交換效果、窗口模式、深度緩沖區(qū)設(shè)置、刷新頻率、提交間隔和提交標(biāo)志等。
為所有的參數(shù)選擇合適的設(shè)置是比較繁瑣的,DXUT框架使用函數(shù)DXUTCreateDevice()簡化了Direct3D設(shè)備的創(chuàng)建。
閱讀全文
摘要: 使用DXUT框架之前,首先需要初始化DXUT,初始化DXUT可以通過函數(shù)DXUTInit()完成。
通常在WinMain()函數(shù)中調(diào)用DXUTInit()函數(shù)進(jìn)行DXUT初始化工作,如果程序員沒有調(diào)用DXUTInit()函數(shù),則DXUT框架會(huì)自動(dòng)使用默認(rèn)參數(shù)調(diào)用該函數(shù)。
閱讀全文
摘要: DXUT框架提供了下列服務(wù),幫助程序員創(chuàng)建一個(gè)應(yīng)用程序:
(1)簡化窗口和設(shè)備的創(chuàng)建。
(2)聲明設(shè)備事件(創(chuàng)建、重置、丟失、銷毀)和窗口事件(消息、鍵盤、鼠標(biāo))。
(3)在窗口模式和全屏模式間切換,在硬件抽象層設(shè)備和參考設(shè)備間切換。
(4)高分辨率計(jì)時(shí)器。
(5)為自動(dòng)測試提供命令行支持。
(6)通過對話框或API選擇設(shè)備。
(7)紋理GUI控件組,包括IME-enable文本框。
(8)附加雜類,例如簡單的攝像機(jī)類。
閱讀全文
摘要: DXUT(也稱sample framework)是建立在Direct3D API之上的Direct3D應(yīng)用程序框架,有了DXUT這樣一個(gè)Direct3D程序框架,只需在這個(gè)框架的基礎(chǔ)上編寫相應(yīng)的代碼,從而簡化了windows和Direct3D API的使用,可以高效地進(jìn)行Direct3D程序設(shè)計(jì)。
閱讀全文
地震應(yīng)該不是百害而無一益,對于受災(zāi)地區(qū)的人們來說是災(zāi)難,而對于地球來說地震是緩解地球本身的壓力,釋放過多
能量,保持巖石圈受力平衡的有效而唯一的途徑。同時(shí)地震也會(huì)把地下的礦物帶到地表。火山噴發(fā)的火山灰使土壤變得肥沃,有利于農(nóng)業(yè)生產(chǎn),而海底地震引起的海
嘯和海風(fēng)給內(nèi)陸地區(qū)帶來難得一遇的水汽對于緩解干旱,凈化空氣起到了一定的作用。
人類畢竟是渺小的,只是地球上眾多生物中的一種,地球?yàn)榱俗陨淼纳婧推胶猓厝粫?huì)犧牲一些生物的利益,而地球作為一種人類目前尚無法感知的智慧存在物,自然有自己的存在和活動(dòng)方式。
生命無常,世事難料,人還是應(yīng)該認(rèn)真生活每一天,不要過于放縱自己。
摘要: 圖形系統(tǒng)中為了獲得當(dāng)前運(yùn)行程序的相關(guān)信息,往往需要在屏幕上顯示文本,Direct3D的功能擴(kuò)展接口ID3DXFont對此提供了方便的解決方法。
使用接口ID3DXFont繪制文本,首先需要通過函數(shù)D3DXCreateFont()創(chuàng)建ID3DXFont字體對象。ID3DXFont接口封裝了 Windows字體和Direct3D設(shè)備指針,D3DXCreateFont()函數(shù)通過Windows字體和Direct3D設(shè)備指針創(chuàng)建 ID3DXFont對象。
閱讀全文
摘要: 在Direct3D中,三維物體的顯示是通過網(wǎng)格模型來實(shí)現(xiàn)的,顯示三維物體的關(guān)鍵在于生成該網(wǎng)格模型。三維文本也不例外,顯示三維文本同樣需要該文本所對應(yīng)的網(wǎng)格模型。 Direct3D為此提供了功能庫函數(shù)D3DXCreateText(),通過它可以方便地創(chuàng)建一個(gè)包含具體文本的網(wǎng)格模型.
閱讀全文
摘要: 圖形系統(tǒng)中為了獲得當(dāng)前運(yùn)行程序的相關(guān)信息,往往需要在屏幕上顯示文本,Direct3D的功能擴(kuò)展接口ID3DXFont對此提供了方便的解決方法。
使用接口ID3DXFont繪制文本,首先需要通過函數(shù)D3DXCreateFont()創(chuàng)建ID3DXFont字體對象。ID3DXFont接口封裝了 Windows字體和Direct3D設(shè)備指針,D3DXCreateFont()函數(shù)通過Windows字體和Direct3D設(shè)備指針創(chuàng)建 ID3DXFont對象。
閱讀全文
摘要: 霧化效果是計(jì)算機(jī)圖形學(xué)中應(yīng)用最廣的效果之一,它不僅能顯著地增加視覺效果的真實(shí)感,并可以提供一定的深度感。在實(shí)時(shí)圖形程序,特別是游戲設(shè)計(jì)程序中,為了確保圖形系統(tǒng)的運(yùn)行速度,圖形開發(fā)人員往往在位于觀察點(diǎn)遠(yuǎn)處的場景使用較為簡單的三維模型,甚至不繪制物體,而在近處使用復(fù)雜模型,這樣就可能造成物體變形、突然出現(xiàn)或突然消失等失真現(xiàn)象,霧化效果可以有效地避免這種失真現(xiàn)象。
閱讀全文
摘要: 要使用基于范圍的霧化,首先需要檢查當(dāng)前硬件是否支持基于范圍的霧化:
// check if hardware supports range fog
D3DCAPS9 caps;
g_device->GetDeviceCaps(&caps);
if(! (caps.RasterCaps & D3DPRASTERCAPS_FOGRANGE))
return false;
閱讀全文