98 lines
1.7 KiB
C++
98 lines
1.7 KiB
C++
/*
|
|
ZStandardParticleUpdateStrategy.h
|
|
Author: James Russell <jcrussell@762studios.com>
|
|
|
|
Purpose: TODO
|
|
|
|
Changelog
|
|
2011/09/11 - creation (jcrussell)
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#ifndef _ZSTANDARDPARTICLEUPDATESTRATEGY_H
|
|
#define _ZSTANDARDPARTICLEUPDATESTRATEGY_H
|
|
|
|
#include <ZRendererUtil/ZParticleUpdateStrategy.h>
|
|
|
|
#define ZSP_DEFAULT_ENERGY_BLEED (1)
|
|
#define ZSP_DEFAULT_ACCELERATION_X (0.0f)
|
|
#define ZSP_DEFAULT_ACCELERATION_Y (0.0f)
|
|
#define ZSP_DEFAULT_ACCELERATION_Z (0.5f)
|
|
|
|
class ZStandardParticleUpdateStrategy : public ZParticleUpdateStrategy
|
|
{
|
|
protected:
|
|
//Acceleration Vector
|
|
ZVector3f ParticleAcceleration;
|
|
|
|
//Energy drop per ms
|
|
size_t EnergyBleed;
|
|
|
|
public:
|
|
/*
|
|
Default Constructor.
|
|
*/
|
|
ZStandardParticleUpdateStrategy();
|
|
|
|
/*
|
|
Destructor.
|
|
*/
|
|
~ZStandardParticleUpdateStrategy();
|
|
|
|
/*
|
|
public ZStandardParticleUpdateStrategy::GetEnergyBleed
|
|
|
|
TODO
|
|
|
|
@return (const size_t)
|
|
@context (all)
|
|
*/
|
|
const size_t GetEnergyBleed();
|
|
|
|
/*
|
|
public ZStandardParticleUpdateStrategy::GetParticleAcceleration
|
|
|
|
TODO
|
|
|
|
@return (const ZVector3f)
|
|
@context (all)
|
|
*/
|
|
const ZVector3f GetParticleAcceleration();
|
|
|
|
/*
|
|
public ZStandardParticleUpdateStrategy::SetEnergyBleed
|
|
|
|
TODO
|
|
|
|
@param _bleedRate -
|
|
@return (void)
|
|
@context (all)
|
|
*/
|
|
void SetEnergyBleed(size_t _bleedRate);
|
|
|
|
/*
|
|
public ZStandardParticleUpdateStrategy::SetParticleAcceleration
|
|
|
|
TODO
|
|
|
|
@param _accel -
|
|
@return (void)
|
|
@context (all)
|
|
*/
|
|
void SetParticleAcceleration(const ZVector3f& _accel);
|
|
|
|
//Subclass Implementation
|
|
virtual bool CheckParticleFormat( const ZString& _format );
|
|
|
|
//Subclass Implementation
|
|
virtual void UpdateParticles(ZParticleEffect* _particleEffect,
|
|
ZParticleEmitter* _particleEmitter,
|
|
ZParticleStorageAllocator* _storageAllocator,
|
|
size_t _dt );
|
|
|
|
};
|
|
|
|
#endif
|
|
|