📄 ch11p2_texturefire.h
字号:
// Ch11p2_TextureFire.h: interface for the CTextureFire class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_CH11P2_TEXTUREFIRE_H__DC47117F_2750_4C69_A954_184DB6487700__INCLUDED_)
#define AFX_CH11P2_TEXTUREFIRE_H__DC47117F_2750_4C69_A954_184DB6487700__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <d3dx8.h>
class CTextureFire
{
public:
CTextureFire() {
m_pd3dDevice = NULL; m_FireBuffer1 = NULL; m_FireBuffer2 = NULL;
m_pActiveBuffer = NULL; m_pScratchBuffer = NULL; }
virtual ~CTextureFire() { InvalidateDeviceObjects(); DeleteDeviceObjects(); }
virtual void InitDeviceObjects(LPDIRECT3DDEVICE8 pDevice, int iTextureSize = 128,
int iCoolAmount = 1);
virtual void RestoreDeviceObjects(void);
virtual void InvalidateDeviceObjects(void);
virtual void DeleteDeviceObjects(void);
virtual void SetupTextureStages(void);
virtual void FrameMove(void);
void SetCoolAmount(int coolamount) { m_iCoolAmount = coolamount; }
int GetCoolAmount(void) { return(m_iCoolAmount); }
bool LoadPaletteFromBMP(const char *strBMPfile);
protected:
virtual void Process(void);
virtual bool CopyToTexture(void);
LPDIRECT3DDEVICE8 m_pd3dDevice;
LPDIRECT3DTEXTURE8 m_pTexture;
int m_iCoolAmount;
int m_iTextureSize;
unsigned char *m_FireBuffer1; // first fire array
unsigned char *m_FireBuffer2; // 2nd fire array
unsigned char *m_pActiveBuffer;
unsigned char *m_pScratchBuffer;
PALETTEENTRY m_Palette[256];
};
#endif // !defined(AFX_CH11P2_TEXTUREFIRE_H__DC47117F_2750_4C69_A954_184DB6487700__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -