赞
踩
//----------------------------------------------------------------------------- // 文件: D3DWindow.h // // 描述: D3DWindow类的头文件,定义变量,函数。 // // 更新: 2009-03-19 by Ninsun //----------------------------------------------------------------------------- #pragma once #define _WIN32_WINNT 0x0502 #include <d3dx9.h> #include <winuser.h> #pragma comment (lib, "d3d9.lib") #pragma comment (lib, "d3dx9.lib") #pragma comment (lib, "User32.lib") #include "D3DCamera.h" struct D3DWINDOW { HINSTANCE hInst; // 实例句柄 WNDPROC pMsgProc; // 消息处理函数指针 INT iWidth; // 屏幕宽度 INT iHeight; // 屏幕高度 LPCTSTR lpszClassName; // 窗口类名 LPCTSTR lpszWindowName; // 窗口名 HICON hIcon; // 图标句柄 HCURSOR hCursor; // 光标句柄 HWND hWnd; // 窗口句柄 LPDIRECT3D9 pD3D; // D3D对象,用于创建设备 LPDIRECT3DDEVICE9 pd3dDevice; // D3D设备,用于渲染 D3DDISPLAYMODE* pd3ddm; // 硬件显示模式 }; #define WND_WIDTH 640 // 默认显示宽度 #define WND_HEIGHT 480 // 默认显示高度 #define VIEW_2D 0 // 2D视图(正交投影) #define VIEW_3D 1 // 3D视图(透视投影) class D3DWindow { public: D3DWindow(D3DWINDOW* _pd3dWindow); public: ~D3DWindow(void); public: VOID showWindow(); D3DWINDOW getWindow(); VOID cleanup(); VOID startRender(); VOID endRender(); private: VOID initD3D(); private: D3DWINDOW m_d3dWindow; };
//---------------