d3d设备创建:
创建参数结构体
/* Resize Optional Parameters */
typedef struct _D3DPRESENT_PARAMETERS_
{
UINT BackBufferWidth;
UINT BackBufferHeight;
//后备 缓存分辨率必须为显卡支持的分辨率
D3DFORMAT BackBufferFormat;
//窗口模式下缓冲区格式可以和显示格式不同,d3d支持不同长度的像素格式转化。
//全屏模式下缓冲区格式必须和显示格式相同,alpha通道无视,。CheckDeviceType可以判断对应的显示格式和后备格式是否支持
UINT BackBufferCount;
//抗锯齿类型和质量。开启后SwapEffect必须为D3DSWAPEFFECT_DISCARD
D3DMULTISAMPLE_TYPE MultiSampleType;
DWORD MultiSampleQuality;
D3DSWAPEFFECT SwapEffect;
HWND hDeviceWindow;
BOOL Windowed;
BOOL EnableAutoDepthStencil;
D3DFORMAT AutoDepthStencilFormat;
DWORD Flags;
/* FullScreen_RefreshRateInHz must be zero for Windowed mode */
UINT FullScreen_RefreshRateInHz;
//提交间隔,设置D3DPRESENT_INTERVAL_DEFAULT则垂直同步,D3DPRESENT_INTERVAL_IMMEDIATE立即提交
UINT PresentationInterval;
} D3DPRESENT_PARAMETERS;
后备缓冲区可以用的像素格式有:
A2R10G10B10
A8R8G8B8
X8R8G8B8
A1R5G5B5
X1R5G5B5
R5G6B5
显示格式可以用的像素有:
A2R10G10B10(full-screen mode only)
X8R8G8B8
X1R5G5B5
R5G6B5