Polyphase Game Engine
Loading...
Searching...
No Matches
ParticleSystemInstance Class Reference

#include <ParticleSystemInstance.h>

Inheritance diagram for ParticleSystemInstance:
ParticleSystem Asset Object

Public Member Functions

 DECLARE_ASSET (ParticleSystemInstance, ParticleSystem)
 
 ParticleSystemInstance ()
 
 ~ParticleSystemInstance ()
 
void CopyParticleSystem (const ParticleSystem *src)
 
virtual void SaveStream (Stream &stream, Platform platform) override
 
virtual void LoadStream (Stream &stream, Platform platform) override
 
- Public Member Functions inherited from ParticleSystem
 DECLARE_ASSET (ParticleSystem, Asset)
 
 ParticleSystem ()
 
 ~ParticleSystem ()
 
virtual void Create () override
 
virtual void Destroy () override
 
virtual bool Import (const std::string &path, ImportOptions *options) override
 
virtual void GatherProperties (std::vector< Property > &outProps) override
 
virtual glm::vec4 GetTypeColor () override
 
virtual const char * GetTypeName () override
 
virtual bool ShouldSnapshotForPie () const override
 
void SetMaterial (Material *material)
 
MaterialGetMaterial () const
 
const ParticleParamsGetParams () const
 
ParticleParamsGetParams ()
 
void SetParams (const ParticleParams &params)
 
void SetDuration (float duration)
 
float GetDuration () const
 
void SetSpawnRate (float spawnRate)
 
float GetSpawnRate () const
 
void SetBurstCount (uint32_t burstCount)
 
uint32_t GetBurstCount () const
 
void SetBurstWindow (float window)
 
float GetBurstWindow () const
 
void SetMaxParticles (uint32_t maxParticles)
 
uint32_t GetMaxParticles () const
 
void SetLoops (uint32_t loops)
 
uint32_t GetLoops () const
 
void SetRadialVelocity (bool radial)
 
bool IsRadialVelocity () const
 
void SetRadialSpawn (bool radial)
 
bool IsRadialSpawn () const
 
void SetLockedRatio (bool lockedRatio)
 
bool IsRatioLocked () const
 
Bounds GetBounds () const
 
- Public Member Functions inherited from Asset
 DECLARE_FACTORY_MANAGER (Asset)
 
 DECLARE_FACTORY (Asset, Asset)
 
 DECLARE_OBJECT (Asset, Object)
 
 Asset ()
 
virtual ~Asset ()
 
virtual void Copy (Asset *srcAsset)
 
const std::string & GetName () const
 
bool IsLoaded () const
 
bool IsRefCounted () const
 
int32_t GetRefCount () const
 
bool IsEmbedded () const
 
void SetEmbedded (bool embed)
 
bool IsEngineAsset () const
 
void SetEngineAsset (bool engineAsset)
 
void SetName (const std::string &name)
 
void IncrementRefCount ()
 
void DecrementRefCount ()
 
void LoadFile (const char *path, AsyncLoadRequest *request=nullptr)
 
void LoadEmbedded (const EmbeddedFile *embeddedAsset, AsyncLoadRequest *request=nullptr)
 
void SaveFile (const char *path, Platform platform)
 
virtual const char * GetTypeImportExt ()
 
bool IsTransient () const
 
void SetTransient (bool transient)
 
uint64_t GetUuid () const
 
void SetUuid (uint64_t uuid)
 
void EnsureUuid ()
 
void WriteHeader (Stream &stream)
 
- Public Member Functions inherited from Object
virtual ~Object ()=default
 
virtual const char * RuntimeName () const =0
 
virtual const char * RuntimeParentName () const =0
 
virtual RuntimeId InstanceRuntimeId () const =0
 
virtual ObjectQueryInterface (RuntimeId id) const
 
virtual bool Is (RuntimeId id) const
 
virtual bool Is (const char *name) const
 
virtual bool DrawCustomProperty (Property &prop)
 
template<typename T >
T * As () const
 
virtual bool Equals (const Object *rhs) const
 

Static Public Member Functions

static ParticleSystemInstanceNew (const ParticleSystem *src=nullptr)
 
- Static Public Member Functions inherited from ParticleSystem
static bool HandlePropChange (Datum *datum, uint32_t index, const void *newValue)
 
- Static Public Member Functions inherited from Asset
static AssetHeader ReadHeader (Stream &stream)
 
static std::string GetNameFromPath (const std::string &path)
 
static std::string GetDirectoryFromPath (const std::string &path)
 
static const char * GetNameFromTypeId (TypeId id)
 
static TypeId GetTypeIdFromName (const char *name)
 
- Static Public Member Functions inherited from Object
static const char * ClassRuntimeName ()
 

Additional Inherited Members

- Protected Attributes inherited from ParticleSystem
float mDuration = 1.0f
 
float mSpawnRate = 10.0f
 
uint32_t mBurstCount = 0
 
float mBurstWindow = 0.1f
 
uint32_t mMaxParticles = 0
 
uint32_t mLoops = 0
 
ParticleLoopMode mLoopMode = ParticleLoopMode::Infinite
 
bool mRadialVelocity = false
 
bool mRadialSpawn = false
 
bool mLockedRatio = true
 
MaterialRef mMaterial = nullptr
 
Bounds mBounds
 
ParticleParams mParams
 
- Protected Attributes inherited from Asset
uint32_t mVersion = 0
 
TypeId mType = INVALID_TYPE_ID
 
uint64_t mUuid = 0
 
bool mEmbedded = false
 
bool mLoaded = false
 
bool mEnableRefCount = true
 
bool mEngineAsset = false
 
bool mTransient = false
 
std::string mName = "Asset"
 
int32_t mRefCount = 0
 

Constructor & Destructor Documentation

◆ ParticleSystemInstance()

ParticleSystemInstance::ParticleSystemInstance ( )

◆ ~ParticleSystemInstance()

ParticleSystemInstance::~ParticleSystemInstance ( )

Member Function Documentation

◆ CopyParticleSystem()

void ParticleSystemInstance::CopyParticleSystem ( const ParticleSystem src)

◆ DECLARE_ASSET()

ParticleSystemInstance::DECLARE_ASSET ( ParticleSystemInstance  ,
ParticleSystem   
)

◆ LoadStream()

void ParticleSystemInstance::LoadStream ( Stream stream,
Platform  platform 
)
overridevirtual

Reimplemented from ParticleSystem.

◆ New()

ParticleSystemInstance * ParticleSystemInstance::New ( const ParticleSystem src = nullptr)
static

◆ SaveStream()

void ParticleSystemInstance::SaveStream ( Stream stream,
Platform  platform 
)
overridevirtual

Reimplemented from ParticleSystem.


The documentation for this class was generated from the following files: