1.最小化DX程序
LPDIRECT3D9 g_D3D //该类型是Direct3D接口对象,最主要的部分
D3DDISPLAYMODE displayMode; //该类型保存前显示的信息,如桌面分辨率(宽度和高度)、显示格式、显示器刷新频率等
LPDIRECT3DDEVICE9 g_D3DDevice //D3D驱动
首先 g_D3D = Direct3DCreate9(D3D_SDK_VERSION); // 创建Direct3D接口对象然后 g_D3D->GetAdapterDisplayMode(D3DADAPTER_DEFAULT, &displayMode) // GetAdapterDisplayMode()函数返回当前显示的信息,如桌面分辨率(宽度和高度)、显示格式、显示器刷新频率等
typedef struct _D3DPRESENT_PARAMETERS_
{
UINT BackBufferWidth; // 窗口的宽度
UINT BackBufferHeight; // 窗口的高度
D3DFORMAT BackBufferFormat; // 后台缓存的格式
UINT BackBufferCount; // 指定的想要用于渲染的后台缓存总数
D3DMULTISAMPLE_TYPE MultiSampleType; // 处理交换效果
DWORD MultiSampleQuality; // 处理交换效果
D3DSWAPEFFECT SwapEffect; // 处理交换效果
HWND hDeviceWindow; // 创建的窗口句柄
BOOL Windowed; // 指定创建的窗口是否是全屏窗口
BOOL EnableAutoDepthStencil; // 设置是否用Direct3D管理缓存深度以及模板缓存
D3DFORMAT AutoDepthStencilFormat; // 深度缓存或模板缓存的像素格式
DWORD Flags; // 一些附加的特性
UINT FullScreen_RefreshRateInHz; // 存储显示器的刷新率
UINT PresentationInterval; // 处理可以显示的交换链的后台缓存的最大次数
} D3DPRESENT_PARAMETERS;
然后创建驱动 g_D3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd,
D3DCREATE_SOFTWARE_VERTEXPROCESSING, & D3DPRESENT_PARAMETERS, &g_D3DDevice))