📄 billboard.h
字号:
// Billboard.h: interface for the CBillboard class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_BILLBOARD_H__85E2CE28_4074_41D3_9ABE_1E5C694A6EFD__INCLUDED_)
#define AFX_BILLBOARD_H__85E2CE28_4074_41D3_9ABE_1E5C694A6EFD__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
struct ANITEXTURE{
int nIndex;
int nFrameNumber;
MCTEXTURE * pMcTexture;
ANITEXTURE() :
nIndex(-1),nFrameNumber(-1),pMcTexture(NULL)
{
}
~ANITEXTURE()
{
SAFE_DELETE(pMcTexture);
}
};
struct BILLVERTEX
{
D3DXVECTOR3 p; // Vertex position
// FLOAT x,y,z; // Vertex texture coordinates
DWORD color; // Vertex color
FLOAT tu, tv; // Vertex texture coordinates
// BILLVERTEX( D3DXVECTOR3 v,DWORD dwColor, FLOAT fTu, FLOAT fTv)
// {
// p = v;
// color = dwColor;
// tu = fTu;
// tv = fTv;
// }
static const DWORD FVF;
//QueryPerformanceFrequency
};
class CBillboard
{
public:
CBillboard();
virtual ~CBillboard();
public:
HRESULT Create();
HRESULT LoadTexture( char * szFileName );
HRESULT CreateVertexBuffer();
HRESULT Update();
void Render();
private:
DWORD m_dwCurFrame;
DWORD m_dwNextFrame;
DWORD m_dwLastFrame;
ANITEXTURE ** m_pTexture;
DWORD * m_nTexIndex;
DWORD m_nBillBoardCount;
LPDIRECT3DTEXTURE9 m_pTextureEx[3]; // 快急父 烙矫风 技泼 窍技~~~
LPDIRECT3DVERTEXBUFFER9 m_pVertexBuffer;
// LPDIRECT3DINDEXBUFFER9 m_pIndexBuffer; // 颇萍努 矫胶袍俊辑绰 鞘夸 绝促..
D3DMATERIAL9 * m_pMaterials;
D3DXVECTOR3 m_vPos; // Vertex position
D3DXVECTOR3 * m_vPosTree; // Vertex position
DWORD * m_dwTexIndex;
D3DXMATRIX m_matBillboardMatrix;
D3DXVECTOR3 m_vDir;
};
#endif // !defined(AFX_BILLBOARD_H__85E2CE28_4074_41D3_9ABE_1E5C694A6EFD__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -