資源簡介
關于簡單四邊形的繪制以及上色

代碼片段和文件信息
#include?“Utility.h“
bool?d3d::InitD3D(HINSTANCE?hInstance?int?width?int?height?bool?windowed?D3DDEVTYPE?deviceType?IDirect3DDevice9**?device)
{
WNDCLASSEX?wc?=?{?0?};
wc.cbSize?=?sizeof(WNDCLASSEX);
wc.style?=?CS_HREDRAW?|?CS_VREDRAW;
wc.cbClsExtra?=?0;
wc.cbWndExtra?=?0;
wc.hInstance?=?hInstance;
wc.hIcon?=?LoadIcon(0?IDI_APPLICATION);
wc.hCursor?=?LoadCursor(0?IDC_ARROW);
wc.hIconSm?=?LoadIcon(0?IDI_APPLICATION);
wc.hbrBackground?=?(HBRUSH)GetStockobject(WHITE_BRUSH);
wc.lpfnWndProc?=?d3d::WndProc;
wc.lpszClassName?=?WINDOW_TITIEL;
wc.lpszMenuName?=?0;
if?(!RegisterClassEx(&wc))
{
::MessageBox(NULL?L“Register?Error“?L“news“?S_OK);
return?false;
}
HWND?hwnd?=?0;
hwnd?=?::CreateWindow(WINDOW_TITIEL?WINDOW_TITIEL?WS_OVERLAPPEDWINDOW
CW_USEDEFAULT?CW_USEDEFAULT?width?height?NULL?NULL?hInstance?NULL);
if?(!hwnd)
{
::MessageBox(NULL?L“Create?Window?Error“?L“News“?MB_OKCANCEL);
return?false;
}
::ShowWindow(hwnd?SW_SHOW);
::UpdateWindow(hwnd);
//Start?Init?D3D
HRESULT?hr?=?0;
IDirect3D9*?d3d9?=?0;
d3d9?=?Direct3DCreate9(D3D_SDK_VERSION);
if?(!d3d9)
{
::MessageBox(NULL?L“D3D?Create?Error“?L“Your?News“?MB_YESNOCANCEL);
return?false;
}
D3DCAPS9?caps;
d3d9->GetDeviceCaps(D3DADAPTER_DEFAULT?deviceType?&caps);
int?vp?=?0;
if?(caps.DevCaps&D3DDEVCAPS_HWTRANSFORMANDLIGHT)
{
vp?=?D3DCREATE_HARDWARE_VERTEXPROCESSING;
}
else
vp?=?D3DCREATE_SOFTWARE_VERTEXPROCESSING;
D3DPRESENT_PARAMETERS?d3dpp;
d3dpp.BackBufferWidth?=?width;
d3dpp.BackBufferHeight?=?height;
d3dpp.BackBufferFormat?=?D3DFMT_A8R8G8B8;
d3dpp.BackBufferCount?=?1;
d3dpp.MultiSampleType?=?D3DMULTISAMPLE_NONE;
d3dpp.MultiSampleQuality?=?0;
d3dpp.SwapEffect?=?D3DSWAPEFFECT_DISCARD;
d3dpp.hDeviceWindow?=?hwnd;
d3dpp.Windowed?=?windowed;
d3dpp.EnableAutoDepthStencil?=?true;
d3dpp.AutoDepthStencilFormat?=?D3DFMT_D24S8;
d3dpp.Flags?=?0;
d3dpp.FullScreen_RefreshRateInHz?=?D3DPRESENT_RATE_DEFAULT;
d3dpp.PresentationInterval?=?D3DPRESENT_INTERVAL_IMMEDIATE;
hr?=?d3d9->CreateDevice(
D3DADAPTER_DEFAULT
deviceType
hwnd
vp
&d3dpp
device);
if?(FAILED(hr))
{
d3dpp.AutoDepthStencilFormat?=?D3DFMT_D16;
hr?=?d3d9->CreateDevice(
D3DADAPTER_DEFAULT
deviceType
hwnd
vp
&d3dpp
device);
if?(FAILED(hr))
{
d3d9->Release();?
::MessageBox(0?L“CreateDevice?Error“?L“News“?MB_RETRYCANCEL);
return?false;
}
}
d3d9->Release();
return?true;
}
int?d3d::EnterMsgLoop(bool(*ptr_display)(float?timeDelta))
{
MSG?msg;
::ZeroMemory(&msg?sizeof(MSG));
static?float?lastTime?=?(float)timeGetTime();
while?(msg.message?!=?WM_QUIT)
{
if?(::PeekMessage(&msg?0?0?0?PM_REMOVE))
{
::TranslateMessage(&msg);
::DispatchMessage(&msg);
}
else
{
float?currTime?=?(float)timeGetTime();
float?timeDelta?=?(currTime?-?lastTi
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2017-05-28?20:14??四邊形的繪制\
?????目錄???????????0??2017-05-28?19:14??四邊形的繪制\.vs\
?????目錄???????????0??2017-05-28?19:14??四邊形的繪制\.vs\四邊形的繪制\
?????目錄???????????0??2017-05-28?19:14??四邊形的繪制\.vs\四邊形的繪制\v14\
?????文件???????27136??2017-05-28?21:05??四邊形的繪制\.vs\四邊形的繪制\v14\.suo
?????目錄???????????0??2017-05-28?20:39??四邊形的繪制\Debug\
?????文件???????53248??2017-05-28?21:05??四邊形的繪制\Debug\四邊形的繪制.exe
?????文件??????437536??2017-05-28?21:05??四邊形的繪制\Debug\四邊形的繪制.ilk
?????文件?????1265664??2017-05-28?21:05??四邊形的繪制\Debug\四邊形的繪制.pdb
?????目錄???????????0??2017-05-28?21:05??四邊形的繪制\四邊形的繪制\
?????目錄???????????0??2017-05-28?21:05??四邊形的繪制\四邊形的繪制\Debug\
?????文件???????72266??2017-05-28?20:39??四邊形的繪制\四邊形的繪制\Debug\Utility.obj
?????文件???????76445??2017-05-28?21:05??四邊形的繪制\四邊形的繪制\Debug\WinMain.obj
?????文件?????1133568??2017-05-28?21:05??四邊形的繪制\四邊形的繪制\Debug\vc140.idb
?????文件??????749568??2017-05-28?21:05??四邊形的繪制\四邊形的繪制\Debug\vc140.pdb
?????文件?????????104??2017-05-28?21:05??四邊形的繪制\四邊形的繪制\Debug\四邊形的繪制.log
?????目錄???????????0??2017-05-28?21:05??四邊形的繪制\四邊形的繪制\Debug\四邊形的繪制.tlog\
?????文件????????1218??2017-05-28?21:05??四邊形的繪制\四邊形的繪制\Debug\四邊形的繪制.tlog\CL.command.1.tlog
?????文件???????65784??2017-05-28?21:05??四邊形的繪制\四邊形的繪制\Debug\四邊形的繪制.tlog\CL.read.1.tlog
?????文件?????????750??2017-05-28?21:05??四邊形的繪制\四邊形的繪制\Debug\四邊形的繪制.tlog\CL.write.1.tlog
?????文件????????1176??2017-05-28?21:05??四邊形的繪制\四邊形的繪制\Debug\四邊形的繪制.tlog\li
?????文件????????3306??2017-05-28?21:05??四邊形的繪制\四邊形的繪制\Debug\四邊形的繪制.tlog\li
?????文件?????????444??2017-05-28?21:05??四邊形的繪制\四邊形的繪制\Debug\四邊形的繪制.tlog\li
?????文件?????????205??2017-05-28?21:05??四邊形的繪制\四邊形的繪制\Debug\四邊形的繪制.tlog\四邊形的繪制.lastbuildstate
?????文件????????3105??2017-05-28?20:29??四邊形的繪制\四邊形的繪制\Utility.cpp
?????文件????????1218??2017-05-28?20:39??四邊形的繪制\四邊形的繪制\Utility.h
?????文件????????3005??2017-05-28?21:05??四邊形的繪制\四邊形的繪制\WinMain.cpp
?????文件????????7878??2017-05-28?20:25??四邊形的繪制\四邊形的繪制\四邊形的繪制.vcxproj
?????文件????????1159??2017-05-28?20:25??四邊形的繪制\四邊形的繪制\四邊形的繪制.vcxproj.filters
?????文件????????1336??2017-05-28?19:14??四邊形的繪制\四邊形的繪制.sln
- 上一篇:HCNA.txt
- 下一篇:stm32f205 IAP程序
評論
共有 條評論