diff options
Diffstat (limited to 'Runtime/Graphics/ParticleSystem/Modules/SizeByVelocityModule.h')
-rw-r--r-- | Runtime/Graphics/ParticleSystem/Modules/SizeByVelocityModule.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/Runtime/Graphics/ParticleSystem/Modules/SizeByVelocityModule.h b/Runtime/Graphics/ParticleSystem/Modules/SizeByVelocityModule.h new file mode 100644 index 0000000..c8ad729 --- /dev/null +++ b/Runtime/Graphics/ParticleSystem/Modules/SizeByVelocityModule.h @@ -0,0 +1,27 @@ +#ifndef SHURIKENMODULESIZEBYVELOCITY_H +#define SHURIKENMODULESIZEBYVELOCITY_H + +#include "ParticleSystemModule.h" +#include "Runtime/Graphics/ParticleSystem/ParticleSystemCurves.h" +#include "Runtime/Math/Vector2.h" + +class SizeBySpeedModule : public ParticleSystemModule +{ +public: + DECLARE_MODULE (SizeBySpeedModule) + SizeBySpeedModule (); + + void Update (const ParticleSystemParticles& ps, float* tempSize, size_t fromIndex, size_t toIndex); + void CheckConsistency (); + + inline MinMaxCurve& GetCurve() { return m_Curve; } + + template<class TransferFunction> + void Transfer (TransferFunction& transfer); + +private: + MinMaxCurve m_Curve; + Vector2f m_Range; +}; + +#endif // SHURIKENMODULESIZEBYVELOCITY_H |