Files
libsst/Include/ZRendererUtil/ZStandardParticleUpdateStrategy.h
2026-04-03 00:22:39 -05:00

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