91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 9KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2021-06-03
  • 語言: 其他
  • 標簽: D3D11??初始化??

資源簡介

D3D11初始化,一個最簡單的D3D11應用程序。學習D3D的開始。

資源截圖

代碼片段和文件信息

#include?
#include?
#include?
#include?

using?namespace?std;

//重要的全局變量
//在后面學習過程中,這些全局將作為框架類的成員變量存在
HINSTANCE g_hInstance(NULL);
HWND g_hWnd(NULL);

wstring g_clsName(L“d3d11“);
wstring g_wndtitle(L“D3D11初始化“);

UINT g_winWidth(640);
UINT g_winHeight(480);

//D3D相關全局變量
ID3D11Device *g_device(NULL);
ID3D11DeviceContext *g_deviceContext(NULL);
IDXGISwapChain *g_swapChain(NULL);

ID3D11DepthStencilView *g_depthStencilView(NULL);
ID3D11RenderTargetView *g_renderTargetView(NULL);

//初始化
BOOL?InitWin32();
//初始化D3D
BOOL?InitD3D();
void?Render();
//主循環
int ?Run();
//回收資源
void?Release();

LRESULT?CALLBACK?WinProc(HWND?hwnd?UINT?msg?WPARAM?wParam?LPARAM?lParam);

//程序入口
int?WINAPI?WinMain(HINSTANCE?hInstance?HINSTANCE?hPrevInstance?LPSTR?cmdLine?int?cmdShow)
{
g_hInstance?=?hInstance;

if(!InitWin32())
return?-1;
if(!InitD3D())
return?-1;

return?Run();
}

BOOL?InitWin32()
{
//創建窗口類
WNDCLASS?wndcls;
wndcls.cbClsExtra?=?0;
wndcls.cbWndExtra?=?0;
wndcls.hbrBackground?=?(HBRUSH)GetStockobject(NULL_BRUSH);
wndcls.hCursor?=?LoadCursor(NULLIDC_ARROW);
wndcls.hIcon?=?LoadIcon(NULLIDI_APPLICATION);
wndcls.hInstance?=?g_hInstance;
wndcls.lpfnWndProc?=?WinProc;
wndcls.lpszClassName?=?g_clsName.c_str();
wndcls.lpszMenuName?=?NULL;
wndcls.style?=?CS_HREDRAW?|?CS_VREDRAW;

//注冊窗口類
if(!RegisterClass(&wndcls))
{
MessageBox(NULLL“窗口注冊失敗!“L“錯誤“MB_OK);
return?FALSE;
}

//創建窗口
g_hWnd?=?CreateWindow(g_clsName.c_str()
g_wndtitle.c_str()
WS_OVERLAPPEDWINDOW
? CW_USEDEFAULTCW_USEDEFAULT
g_winWidthg_winHeight
NULL
NULL
g_hInstance
NULL);
if(!g_hWnd)
{
MessageBox(NULLL“窗口創建失敗!“L“錯誤“MB_OK);
return?FALSE;
}

//顯示、更新窗口
ShowWindow(g_hWndSW_SHOW);
UpdateWindow(g_hWnd);

//Win32初始化完畢
return?TRUE;
}

BOOL?InitD3D()
{
//創建設備及上下文
D3D_FEATURE_LEVEL?features[3]?=?{D3D_FEATURE_LEVEL_11_0?D3D_FEATURE_LEVEL_10_0?D3D_FEATURE_LEVEL_9_3};
D3D_FEATURE_LEVEL?myFeatureLevel;
HRESULT?hr?=?D3D11CreateDevice(NULLD3D_DRIVER_TYPE_HARDWARE00features3D3D11_SDK_VERSION&g_device&myFeatureLevel&g_deviceContext);
if(FAILED(hr))
{
MessageBox(NULLL“創建d3d11設備失敗!“L“錯誤“MB_OK);
return?FALSE;
}

//檢測4x采樣等級
UINT?msaa4xQuality(0);
g_device->CheckMultisampleQualityLevels(DXGI_FORMAT_R8G8B8A8_UNORM4&msaa4xQuality);

//創建交換鏈
//先描述其屬性
DXGI_SWAP_CHAIN_DESC?swapChainDesc?=?{0};
swapChainDesc.BufferDesc.Width?=?g_winWidth; //寬、高
swapChainDesc.BufferDesc.Height?=?g_winHeight;
swapChainDesc.BufferDesc.RefreshRate.Denominator?=?1; //刷新率
swapChainDesc.BufferDesc.RefreshRate.Numerator?=?60;
swapChainDesc.BufferDesc.Scaling?=?DXGI_MODE_SCALING_UNSPECIFIED; //恒定參數,按照這樣指明即可
swapChainDesc.BufferDesc.ScanlineOrdering?=?DXGI_MODE_SCANLINE_ORDER_UNSPECIFIED; //同上
swapChainDesc.BufferDesc.Format?=?DXGI_FORMAT_R8

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????7178??2012-12-13?08:28??D3D11初始化\Win32.cpp
?????文件???????12288??2012-12-13?08:28??D3D11初始化\init.exe
?????目錄???????????0??2012-12-13?08:29??D3D11初始化\

評論

共有 條評論