资源简介
关于简单四边形的绘制以及上色
代码片段和文件信息
#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程序
相关资源
- D3D11教程2源码
- dxguid.lib
- 基于DirectX+11的图形程序设计测试题及
- DirectX中文手册.pdf
- DirectX 3D HLSL高级精讲01
- DirectX3D|DirectX3D支持库
- DirectX_9.0_3D_游戏开发编程基础 配套源
- DirectX修复工具 V3.3在线修复版
- DirectX修复工具V3.7在线修复版
- DWGdirectX使用帮助说明。chm文件
- DX11 龙书 中文版 Introduction to 3D Game
- d3dx12.h
- DirectX9_3D游戏程序设计入门+帮助文档
- DirectX修复工具 V3.5在线修复 绿色版
- DirectX修复工具V4.0在线修复版
- 基于Directx9实现的射击类游戏
- D3D11教程3源码
- Chapter 7 习题解答
- Managed DirectX 9(中文版)
- Directx 摄像头
- dxTest.zip
- 贪食蛇游戏代码 (DirectX)
评论
共有 条评论