DX步步為營(零)——入門篇

來源:互聯網
上載者:User

之前研究過一段時間的OpenGL,可惜工作中暫時用不到,現在跑來研究一下DX,好歹工作中也可以用到一些了。

 

說說的我環境吧: Windows xp+sp2+DirectX9+VS2005

 

dx的下載安裝就此略過吧。

1.建立一空的項目,把DX目錄下的Include,Lib目錄添加到vs2005的配置目錄中;

2.引用dx標頭檔和lib庫

3.開始來點介面調用demo。

 

-------------------------

#.h

 

 #include "stdafx.h"<br />#include <iostream><br />#include <d3d9.h></p><p>#pragma comment(lib,"d3d9.lib")</p><p>void test1(LPDIRECT3D9 d3d)<br />{<br />TCHAR szBuf[512] = {0x00};<br />// adapter display info<br />D3DDISPLAYMODE d3ddm;<br />if (FAILED(d3d->GetAdapterDisplayMode(D3DADAPTER_DEFAULT, &d3ddm)))<br />{<br />wsprintf(szBuf, "GetAdapterDisplayMode Failed");<br />::MessageBox(NULL, szBuf, "Tip", MB_OK);<br />return;<br />}<br />wsprintf(szBuf, "resolution=%d X %d/nrefresh rate=%d/n/D3DFORMAT=%d",<br />d3ddm.Width, d3ddm.Height, d3ddm.RefreshRate, d3ddm.Format);<br />::MessageBox(NULL, szBuf, "Tip", MB_OK);<br />}</p><p>void test2(LPDIRECT3D9 d3d)<br />{<br />TCHAR szBuf[512] = {0x00};<br />//depth buffer algorithm<br />if(D3D_OK != d3d->CheckDepthStencilMatch(D3DADAPTER_DEFAULT,D3DDEVTYPE_HAL,D3DFMT_R5G6B5,D3DFMT_R5G6B5,D3DFMT_D16))<br />{<br />wsprintf(szBuf, "CheckDepthStencilMatch D3DADAPTER_DEFAULT failed");<br />MessageBox(NULL, szBuf,"Tip",MB_OK);<br />return ;<br />}<br />wsprintf(szBuf, "depth buffer OK");<br />MessageBox(NULL,szBuf,"Tip",MB_OK);<br />}</p><p>BOOL test()<br />{<br />LPDIRECT3D9 d3d = NULL;<br />TCHAR szBuf[512] = {0x00};</p><p>if(NULL == (d3d=::Direct3DCreate9(D3D_SDK_VERSION)))<br />{<br />wsprintf(szBuf, "Direct3DCreate9 Failed.");<br />::MessageBox(NULL,szBuf,"Tip",MB_OK);<br />return FALSE;<br />}<br />else<br />{<br />UINT unNum = d3d->GetAdapterCount();<br />wsprintf(szBuf, "Adapter Number=%d", unNum);<br />::MessageBox(NULL, szBuf, "Tip", MB_OK);<br />}</p><p>test1(d3d);<br />test2(d3d);</p><p>d3d->Release();</p><p>return TRUE;<br />};

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.