⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mainfrm.h

📁 CEGUI是用来做3D游戏UI界面开发的底层接口库
💻 H
字号:
// MainFrm.h : CMainFrame 类的接口
//


#pragma once

#include "ChildView.h"
#include <RendererModules/directx9GUIRenderer/d3d9renderer.h>

class CMainFrame : public CFrameWnd
{
	
public:
	CMainFrame();
protected: 
	DECLARE_DYNAMIC(CMainFrame)

/// 属性
public:

/// 操作
public:

/// 重写
public:
	virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
	virtual BOOL OnCmdMsg(UINT nID, int nCode, void* pExtra, AFX_CMDHANDLERINFO* pHandlerInfo);

/// 实现
public:
	virtual ~CMainFrame();
#ifdef _DEBUG
	virtual void AssertValid() const;
	virtual void Dump(CDumpContext& dc) const;
#endif

protected:  /// 控件条嵌入成员
	CToolBar    m_wndToolBar;
	CChildView    m_wndView;

/// 生成的消息映射函数
protected:
	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
	afx_msg void OnSetFocus(CWnd *pOldWnd);
	DECLARE_MESSAGE_MAP()
protected:
	LPDIRECT3DDEVICE9 m_d3dDevice;	///< Direct3D9 Device Interface
	CEGUI::DirectX9Renderer* m_pCEGUIRender;	///< CEGUI Render
    LPD3DXMESH m_pMesh;///< mesh pointer
    DWORD m_dwNumMaterials;///< materials num
    D3DMATERIAL9* m_pMeshMaterials;///< materials pointer
    LPDIRECT3DTEXTURE9  m_pText;///< texture pointer
	float m_rotateY;///< rotate around y
public:
	/// 渲染
	void Render(float timeDelta);
	/// 初始化D3D
	BOOL InitD3D(void);
protected:
	/// 清除资源
	void CleanUp(void);
	/// 装载资源
	BOOL Setup(void);
    /// 装载GUI
    BOOL SetupGUI(void);
    /// 状态模型
    BOOL SetupModel(void);
    /// 绘制Mesh
    void DrawMesh(void);
	/// 左转按钮事件处理
	bool TurnLeft(const CEGUI::EventArgs& e);
	/// 右转按钮事件处理
	bool TurnRight(const CEGUI::EventArgs& e);
public:
	afx_msg void OnDestroy();
	afx_msg void OnMouseMove(UINT nFlags, CPoint point);
};

#define SAFE_DELETE(x) if(NULL != x) {delete x;x=NULL;}
#define SAFE_DELETE_ARRAY(x) if(NULL != x) {delete[] x;x=NULL;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -