📄 headerin3d.cpp
字号:
// HeaderIn3D.cpp: implementation of the HeaderIn3D class.
//
//////////////////////////////////////////////////////////////////////
#include "HeaderIn3D.h"
USING NAMESPACE CGE;
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
BOOL Keyboard(UINT nScanCode,WPARAM wParam,LPARAM lParam)
{
return theApp.LockKeyboard(nScanCode,wParam,lParam);
}
HeaderIn3D::HeaderIn3D()
{
m_dyChinaChar = 0;
m_dyCamera = 0;
}
HeaderIn3D::~HeaderIn3D()
{
SAFE_DELETE(m_dyChinaChar);
SAFE_DELETE(m_dyCamera);
}
BOOL HeaderIn3D::InitializeOnFirstTime()
{
m_dyChinaChar = new FONT::Char2Font;
m_dyCamera = new MATRIX::CAMERA;
m_dyEnFont = new FONT::EnFont;
return TRUE;
}
BOOL HeaderIn3D::InitializeEntironment()
{
m_dyChinaChar->SetCacheLevel(2);
m_dyChinaChar->SetChar2Font("Arial",16,0,0,0);
m_dyEnFont->SetEnFont(DEVICE,"Arial",16,10,0,0);
m_dyCamera->MatrixLookAt(D3DXVECTOR3(0,0,-30),D3DXVECTOR3(0,0,1),D3DXVECTOR3(0,1,0));
return TRUE;
}
BOOL HeaderIn3D::SetfreeEntironment()
{
m_dyChinaChar->SetfreeContext();
m_dyEnFont->SetfreeContext();
return TRUE;
}
BOOL HeaderIn3D::AfreshEntironment()
{
m_dyChinaChar->Create(DEVICE);
m_dyEnFont->CreateContext(DEVICE);
DEVICE->SetTransform(D3DTS_PROJECTION,&m_dyCamera->MatrixPerspectiveFovLH(D3DX_PI/4,
(FLOAT)BackBufferWidth()/BackBufferHeight(),1.0f,100.0f));
DEVICE->SetRenderState( D3DRS_ZENABLE, 1);
DEVICE->SetRenderState( D3DRS_LIGHTING, FALSE);
DEVICE->SetRenderState( D3DRS_CULLMODE,D3DCULL_NONE);
DEVICE->SetTextureStageState(0,D3DTSS_MAGFILTER, D3DTEXF_LINEAR);
DEVICE->SetTextureStageState(0,D3DTSS_MINFILTER, D3DTEXF_LINEAR);
DEVICE->SetTextureStageState(0,D3DTSS_MIPFILTER, D3DTEXF_LINEAR);
return TRUE;
}
BOOL HeaderIn3D::CheckFrameInMove()
{
return TRUE;
}
LRESULT HeaderIn3D::DefineUserMsgProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
return Behavior::DefineUserMsgProc(hWnd,msg,wParam,lParam);
}
BOOL HeaderIn3D::DrawEntironment()
{
DEVICE->Clear( 0, NULL, D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER,
D3DCOLOR_COLORVALUE(0.0f, 0.0f, 0.0f, 1.0f), 1.0f, 0 );
DEVICE->SetTransform(D3DTS_VIEW,&m_dyCamera->MatrixLookAtLH());
if ( SUCCEEDED(DEVICE->BeginScene()))
{
m_dyEnFont->BeginTextOut();
m_dyEnFont->Text2DOut(m_strAdapterInfo,100,2,D3DCOLOR_RGBA(255,128,0,255));
m_dyEnFont->EndTextOut();
m_dyChinaChar->BeginTextOut();
for( int i = 0; i<30; ++i)
{
m_dyChinaChar->Text2DOut("包括现在,有很多游戏都还点阵字库。",3,i*20,D3DCOLOR_RGBA(255,128,0,255),-1,1,1);
}
m_dyChinaChar->EndTextOut();
DEVICE->EndScene();
}
DEVICE->Present(0,0,0,0);
return TRUE;
}
BOOL HeaderIn3D::LockKeyboard(UINT nScanCode, WPARAM wParam, LPARAM lParam)
{
return TRUE;
}
BOOL HeaderIn3D::CleanupOnLastTime()
{
return TRUE;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -