📄 particlesystemfx.h
字号:
// ----------------------------------------------------------------------- //
//
// MODULE : ParticleSystemFX.h
//
// PURPOSE : ParticleSystem special fx class - Definition
//
// CREATED : 10/21/97
//
// ----------------------------------------------------------------------- //
#ifndef __PARTICLE_SYSTEM_FX_H__
#define __PARTICLE_SYSTEM_FX_H__
#include "BaseParticleSystemFX.h"
struct PSCREATESTRUCT : public SFXCREATESTRUCT
{
PSCREATESTRUCT::PSCREATESTRUCT();
DVector vColor1;
DVector vColor2;
DDWORD dwFlags;
DFLOAT fBurstWait;
DFLOAT fParticlesPerSecond;
DFLOAT fEmissionRadius;
DFLOAT fMinimumVelocity;
DFLOAT fMaximumVelocity;
DFLOAT fVelocityOffset;
DFLOAT fParticleLifetime;
DFLOAT fParticleRadius;
DFLOAT fGravity;
DFLOAT fRotationVelocity;
HSTRING hstrTextureName;
};
inline PSCREATESTRUCT::PSCREATESTRUCT()
{
memset(this, 0, sizeof(PSCREATESTRUCT));
}
class CParticleSystemFX : public CBaseParticleSystemFX
{
public :
CParticleSystemFX();
~CParticleSystemFX()
{
if (m_cs.hstrTextureName && m_pClientDE)
{
m_pClientDE->FreeString(m_cs.hstrTextureName);
}
}
virtual DBOOL Init(SFXCREATESTRUCT* psfxCreateStruct);
virtual DBOOL Update();
virtual DBOOL CreateObject(CClientDE* pClientDE);
protected :
// Creation data...
PSCREATESTRUCT m_cs; // Holds all initialization data
DBOOL m_bFirstUpdate; // Is this the first update
DFLOAT m_fNextUpdate; // Time between updates
DFLOAT m_fLastTime; // When was the last time
DVector m_vMinOffset; // Minumum offset
DVector m_vMaxOffset; // Maximum offset
DVector m_vMinVel; // Minimum velocity
DVector m_vMaxVel; // Maximum velocity
DDWORD m_dwLastFrameUserFlags;
};
#endif // __PARTICLE_SYSTEM_FX_H__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -