1)按照这里的方法配置好DirectX11
2)流程简介
>首先,要初始化窗口,用于显示图形图像。
>其次,创建图形模型(InitModel),如一个三角片,由三个顶点组成,每个顶点有对应的颜色或纹理;然后,创建着色器(InitShader),包括顶点着色器和像素着色器,用于将模型与GPU关联,将模型放入渲染管道线中处理。
>然后,利用Windows的消息循环机制,不断接收用户消息并给出响应,这里当消息队列为空时,进行图形渲染。
>最后,为防止内存泄露,要释放刚才创建的多个指针。
3)代码(main.cpp)
#include <Windows.h>
#include <d3d11.h>
#include <D3DX11.h>
#include <tchar.h>
#include "DXGI.h"
#include "d3dcommon.h"
#include "d3dx10math.h"
//全局变量
HINSTANCE g_hInstance = NULL;
HWND g_hWnd = NULL;
D3D_DRIVER_TYPE g_driverType = D3D_DRIVER_TYPE_NULL;//选择驱动类型
D3D_FEATURE_LEVEL g_featureLevel = D3D_FEATURE_LEVEL_11_0;//选择directX版本
ID3D11Device* g_device = NULL;//设备
ID3D11DeviceContext* g_deviceContext = NULL;//设备上下文
IDXGISwapChain* g_swapChain = NULL;//交换链
ID3D11RenderTargetView* g_renderTargetView = NULL;//渲染目标视图
HRESULT InitWindow( HINSTANCE hInstance,
int nCmdShow );//初始化窗口
HRESULT InitDevice();//初始化d3d设备
void ShutdownDevice();//关闭d3d设备
LRESULT CALLBACK WndProc( HWND hWnd,
UINT uMsg,
WPAR