-
大小: 5.27MB文件類型: .rar金幣: 2下載: 0 次發(fā)布日期: 2023-09-18
- 語(yǔ)言: C/C++
- 標(biāo)簽: 游戲開(kāi)發(fā)??C++??筆記??源碼??
資源簡(jiǎn)介
博文的配套源碼 《【 Visual C++】游戲開(kāi)發(fā)筆記之二——最簡(jiǎn)單的directx,vc窗口的編寫(xiě) 》
,原文地址為http://blog.csdn.net/zhmxy555/article/details/7318634,
源碼編譯環(huán)境為vs2010.
我的博客地址是http://blog.csdn.net/zhmxy555,源碼可以結(jié)合我的筆記一起看
希望能和大家一起交流,共同學(xué)習(xí),共同進(jìn)步。

代碼片段和文件信息
#include
#pragma?comment(lib?“d3d9.lib“)
#pragma?comment(lib?“d3dx9.lib“)
#define?WINDOW_CLASS?“UGPDX“
#define?WINDOW_NAME??“Blank?D3D?Window“
//?Function?Prototypes...
bool?InitializeD3D(HWND?hWnd?bool?fullscreen);
void?RenderScene();
void?Shutdown();
//?Direct3D?object?and?device.
LPDIRECT3D9?g_D3D?=?NULL;
LPDIRECT3DDEVICE9?g_D3DDevice?=?NULL;
LRESULT?WINAPI?MsgProc(HWND?hWnd?UINT?msg?WPARAM?wParam?LPARAM?lParam)
{
???switch(msg)
??????{
?????????case?WM_DESTROY:
????????????PostQuitMessage(0);
????????????return?0;
????????????break;
?????????case?WM_KEYUP:
????????????if(wParam?==?VK_ESCAPE)?PostQuitMessage(0);
????????????break;
??????}
???return?DefWindowProc(hWnd?msg?wParam?lParam);
}
int?WINAPI?WinMain(HINSTANCE?hInst?HINSTANCE?prevhInst?LPSTR?cmdLine?int?show)
{
???//?Register?the?window?class
???WNDCLASSEX?wc?=?{?sizeof(WNDCLASSEX)?CS_CLASSDC?MsgProc?0L?0L
?????????????????????GetModuleHandle(NULL)?NULL?NULL?NULL?NULL
?????????????????????WINDOW_CLASS?NULL?};
???RegisterClassEx(&wc);
???//?Create?the?application‘s?window
???HWND?hWnd?=?CreateWindow(WINDOW_CLASS?WINDOW_NAME?WS_OVERLAPPEDWINDOW
????????????????????????????100?100?640?480?GetDesktopWindow()?NULL
????????????????????????????wc.hInstance?NULL);
???//?Initialize?Direct3D
???if(InitializeD3D(hWnd?false))
??????{
?????????//?Show?the?window
?????????ShowWindow(hWnd?SW_SHOWDEFAULT);
?????????UpdateWindow(hWnd);
?????????//?Enter?the?message?loop
?????????MSG?msg;
?????????ZeroMemory(&msg?sizeof(msg));
?????????while(msg.message?!=?WM_QUIT)
????????????{
???????????????if(PeekMessage(&msg?NULL?0U?0U?PM_REMOVE))
??????????????????{
?????????????????????TranslateMessage(&msg);
?????????????????????DispatchMessage(&msg);
??????????????????}
???????????????else
??????????????????RenderScene();
????????????}
??????}
???//?Release?any?and?all?resources.
???Shutdown();
???//?Unregister?our?window.
???UnregisterClass(WINDOW_CLASS?wc.hInstance);
???return?0;
}
bool?InitializeD3D(HWND?hWnd?bool?fullscreen)
{
???D3DDISPLAYMODE?displayMode;
???//?Create?the?D3D?object.
???g_D3D?=?Direct3DCreate9(D3D_SDK_VERSION);
???if(g_D3D?==?NULL)?return?false;
???//?Get?the?desktop?display?mode.
???if(FAILED(g_D3D->GetAdapterDisplayMode(D3DADAPTER_DEFAULT?&displayMode)))
??????return?false;
???//?Set?up?the?structure?used?to?create?the?D3DDevice
???D3DPRESENT_PARAMETERS?d3dpp;
???ZeroMemory(&d3dpp?sizeof(d3dpp));
???if(fullscreen)
??????{
?????????d3dpp.Windowed?=?FALSE;
?????????d3dpp.BackBufferWidth?=?640;
?????????d3dpp.BackBufferHeight?=?480;
??????}
???else
??????d3dpp.Windowed?=?TRUE;
???d3dpp.SwapEffect?=?D3DSWAPEFFECT_DISCARD;
???d3dpp.BackBufferFormat?=?displayMode.Format;
???//?Create?the?D3DDevice
???if(FAILED(g_D3D->CreateDevice(D3DADAPTER_DEFAULT?D3DDEVTYPE_HAL?hWnd
?????????????D3DCREATE_SOFTWARE_V
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件???25579520??2012-03-21?18:07??【Visual?C++】Code_Note_2\BlankWindow.sdf
?????文件???????1084??2012-03-04?10:15??【Visual?C++】Code_Note_2\BlankWindow.sln
?????文件????????911??2005-05-17?18:54??【Visual?C++】Code_Note_2\BlankWindow.sln.old
????..A..H.?????13824??2012-03-21?18:07??【Visual?C++】Code_Note_2\BlankWindow.suo
????..A..H.??????8704??2005-05-24?23:39??【Visual?C++】Code_Note_2\BlankWindow.suo.old
?????文件???????3368??2005-05-24?22:35??【Visual?C++】Code_Note_2\BlankWindow.vcproj
?????文件???????5685??2012-03-04?10:15??【Visual?C++】Code_Note_2\BlankWindow.vcxproj
?????文件????????920??2012-03-04?10:15??【Visual?C++】Code_Note_2\BlankWindow.vcxproj.filters
?????文件????????143??2012-03-04?10:15??【Visual?C++】Code_Note_2\BlankWindow.vcxproj.user
?????文件??????16122??2012-03-21?18:06??【Visual?C++】Code_Note_2\main.asm
?????文件???????3586??2012-03-21?18:07??【Visual?C++】Code_Note_2\main.cpp
?????文件??????50688??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release\BlankWindow.exe
?????文件????????381??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release\BlankWindow.exe.intermediate.manifest
?????文件?????????71??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release\BlankWindow.lastbuildstate
?????文件???????2323??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release\BlankWindow.log
?????文件?????494592??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release\BlankWindow.pdb
?????文件???????2010??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release\cl.command.1.tlog
?????文件??????27936??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release\CL.read.1.tlog
?????文件???????1106??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release\CL.write.1.tlog
?????文件???????2900??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release\li
?????文件???????7042??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release\li
?????文件???????1338??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release\li
?????文件??????48227??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release\main.obj
?????文件???????1106??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release\mt.command.1.tlog
?????文件???????1786??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release\mt.read.1.tlog
?????文件????????730??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release\mt.write.1.tlog
?????文件?????159744??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release\vc100.pdb
?????目錄??????????0??2012-03-21?18:06??【Visual?C++】Code_Note_2\Release
?????目錄??????????0??2012-03-21?18:07??【Visual?C++】Code_Note_2
-----------?---------??----------?-----??----
............此處省略2個(gè)文件信息
- 上一篇:基于MFC的代碼編輯器
- 下一篇:OpenCV多通道圖像混合程序 by淺墨
評(píng)論
共有 條評(píng)論