76 virtual void Create()
override;
77 virtual void Destroy()
override;
84 void SetMaterial(
Material* material);
91 void SetDuration(
float duration);
92 float GetDuration()
const;
94 void SetSpawnRate(
float spawnRate);
95 float GetSpawnRate()
const;
97 void SetBurstCount(uint32_t burstCount);
98 uint32_t GetBurstCount()
const;
100 void SetBurstWindow(
float window);
101 float GetBurstWindow()
const;
103 void SetMaxParticles(uint32_t maxParticles);
104 uint32_t GetMaxParticles()
const;
106 void SetLoops(uint32_t loops);
107 uint32_t GetLoops()
const;
109 void SetRadialVelocity(
bool radial);
110 bool IsRadialVelocity()
const;
112 void SetRadialSpawn(
bool radial);
113 bool IsRadialSpawn()
const;
115 void SetLockedRatio(
bool lockedRatio);
116 bool IsRatioLocked()
const;
120 static bool HandlePropChange(
Datum* datum, uint32_t index,
const void* newValue);
124 float mDuration = 1.0f;
125 float mSpawnRate = 10.0f;
126 uint32_t mBurstCount = 0;
127 float mBurstWindow = 0.1f;
128 uint32_t mMaxParticles = 0;
131 bool mRadialVelocity =
false;
132 bool mRadialSpawn =
false;
133 bool mLockedRatio =
true;
#define PI
Definition Easing.cpp:7
Platform
Definition EngineTypes.h:31
ParticleLoopMode
Definition ParticleSystem.h:22
#define POLYPHASE_API
Definition PolyphaseAPI.h:31
virtual bool Import(const std::string &path, ImportOptions *options=nullptr)
Definition Asset.cpp:244
virtual void Create()
Definition Asset.cpp:77
virtual void SaveStream(Stream &stream, Platform platform)
Definition Asset.cpp:236
virtual glm::vec4 GetTypeColor()
Definition Asset.cpp:254
virtual const char * GetTypeName()
Definition Asset.cpp:259
virtual void GatherProperties(std::vector< Property > &outProps) override
Definition Asset.cpp:249
virtual void LoadStream(Stream &stream, Platform platform)
Definition Asset.cpp:222
virtual void Destroy()
Definition Asset.cpp:87
Definition ParticleSystem.h:66
Bounds mBounds
Definition ParticleSystem.h:136
DECLARE_ASSET(ParticleSystem, Asset)
virtual bool ShouldSnapshotForPie() const override
Definition ParticleSystem.h:82
ParticleParams mParams
Definition ParticleSystem.h:138
Definition EngineTypes.h:193
Definition ParticleSystem.h:31
glm::vec3 mVelocityMin
Definition ParticleSystem.h:39
glm::vec3 mPositionMax
Definition ParticleSystem.h:37
glm::vec4 mColorEnd
Definition ParticleSystem.h:59
glm::vec3 mAcceleration
Definition ParticleSystem.h:52
glm::vec2 mScaleStart
Definition ParticleSystem.h:61
glm::vec2 mScaleEnd
Definition ParticleSystem.h:62
float mLifetimeMin
Definition ParticleSystem.h:33
float mRotationSpeedMax
Definition ParticleSystem.h:49
glm::vec2 mSizeMin
Definition ParticleSystem.h:42
glm::vec3 mPositionMin
Definition ParticleSystem.h:36
float mAlphaEase
Definition ParticleSystem.h:54
float mScaleEase
Definition ParticleSystem.h:55
glm::vec2 mSizeMax
Definition ParticleSystem.h:43
glm::vec3 mVelocityMax
Definition ParticleSystem.h:40
glm::vec4 mColorStart
Definition ParticleSystem.h:58
float mLifetimeMax
Definition ParticleSystem.h:34
float mRotationMin
Definition ParticleSystem.h:45
float mRotationMax
Definition ParticleSystem.h:46
float mRotationSpeedMin
Definition ParticleSystem.h:48