Plasma Engine  2.0
Loading...
Searching...
No Matches
plParticleEmitter_Continuous Class Referencefinal
Inheritance diagram for plParticleEmitter_Continuous:

Public Member Functions

virtual void CreateRequiredStreams () override
 
- Public Member Functions inherited from plParticleModule
virtual void QueryOptionalStreams ()
 
void Reset (plParticleSystemInstance *pOwner)
 
plParticleSystemInstanceGetOwnerSystem ()
 
const plParticleSystemInstanceGetOwnerSystem () const
 
plParticleEffectInstanceGetOwnerEffect () const
 
virtual void RequestRequiredWorldModulesForCache (plParticleWorldModule *pParticleModule)
 Override this to cache world module pointers for later (through plParticleWorldModule::GetCachedWorldModule()).
 
- Public Member Functions inherited from plProcessingStreamProcessor
 plProcessingStreamProcessor ()
 Base constructor.
 
virtual ~plProcessingStreamProcessor ()
 Base destructor.
 
- Public Member Functions inherited from plReflectedClass
virtual const plRTTIGetDynamicRTTI () const
 
bool IsInstanceOf (const plRTTI *pType) const
 Returns whether the type of this instance is of the given type or derived from it.
 
template<typename T >
PL_ALWAYS_INLINE bool IsInstanceOf () const
 Returns whether the type of this instance is of the given type or derived from it.
 

Public Attributes

plTime m_StartDelay
 
plUInt32 m_uiSpawnCountPerSec
 
plUInt32 m_uiSpawnCountPerSecRange
 
plTempHashedString m_sSpawnCountScaleParameter
 
plCurve1DResourceHandle m_hCountCurve
 
plTime m_CurveDuration
 
- Public Attributes inherited from plProcessingStreamProcessor
float m_fPriority = 0.0f
 Used for sorting processors, to ensure a certain order. Lower priority == executed first.
 

Protected Member Functions

virtual bool IsContinuous () const override
 
virtual void InitializeElements (plUInt64 uiStartIndex, plUInt64 uiNumElements) override
 This method needs to be implemented in order to initialize new elements to specific values.
 
virtual void OnFinalize () override
 Called after everything is set up.
 
virtual plParticleEmitterState IsFinished () override
 Called before ComputeSpawnCount(). Should return true, if the emitter will never spawn any more particles.
 
virtual plUInt32 ComputeSpawnCount (const plTime &tDiff) override
 Called once per update. Must return how many new particles are to be spawned.
 
- Protected Member Functions inherited from plParticleEmitter
virtual void Process (plUInt64 uiNumElements) final override
 The actual method which processes the data, will be called with the number of elements to process.
 
virtual void ProcessEventQueue (plParticleEventQueue queue)
 
- Protected Member Functions inherited from plParticleModule
virtual void OnReset ()
 Called by Reset()
 
void CreateStream (const char *szName, plProcessingStream::DataType Type, plProcessingStream **ppStream, bool bWillInitializeStream)
 
virtual plResult UpdateStreamBindings () final override
 Internal method which needs to be implemented, gets the concrete stream bindings. This is called every time the streams are resized. Implementations should check that their required streams exist and are of the correct data types.
 
plRandomGetRNG () const
 

Protected Attributes

plTime m_CountCurveTime
 
plTime m_TimeSinceRandom
 
float m_fCurSpawnPerSec
 
float m_fCurSpawnCounter
 
- Protected Attributes inherited from plProcessingStreamProcessor
plProcessingStreamGroupm_pStreamGroup = nullptr
 Back pointer to the stream group - will be set to the owner stream group when adding the stream processor to the group. Can be used to get stream pointers in UpdateStreamBindings();.
 

Additional Inherited Members

- Static Public Member Functions inherited from plNoBase
static const plRTTIGetStaticRTTI ()
 

Member Function Documentation

◆ ComputeSpawnCount()

plUInt32 plParticleEmitter_Continuous::ComputeSpawnCount ( const plTime & tDiff)
overrideprotectedvirtual

Called once per update. Must return how many new particles are to be spawned.

Implements plParticleEmitter.

◆ CreateRequiredStreams()

virtual void plParticleEmitter_Continuous::CreateRequiredStreams ( )
inlineoverridevirtual

Implements plParticleModule.

◆ InitializeElements()

virtual void plParticleEmitter_Continuous::InitializeElements ( plUInt64 uiStartIndex,
plUInt64 uiNumElements )
inlineoverrideprotectedvirtual

This method needs to be implemented in order to initialize new elements to specific values.

Implements plProcessingStreamProcessor.

◆ IsContinuous()

virtual bool plParticleEmitter_Continuous::IsContinuous ( ) const
inlineoverrideprotectedvirtual

Reimplemented from plParticleEmitter.

◆ IsFinished()

plParticleEmitterState plParticleEmitter_Continuous::IsFinished ( )
overrideprotectedvirtual

Called before ComputeSpawnCount(). Should return true, if the emitter will never spawn any more particles.

Implements plParticleEmitter.

◆ OnFinalize()

void plParticleEmitter_Continuous::OnFinalize ( )
overrideprotectedvirtual

Called after everything is set up.

Reimplemented from plParticleModule.


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