Click or drag to resize
DigitalRuneReserveParticleEffector Class
Kills old particles if the particle system reaches the MaxNumberOfParticles limit.
Inheritance Hierarchy
SystemObject
  DigitalRune.ParticlesParticleEffector
    DigitalRune.Particles.EffectorsReserveParticleEffector

Namespace: DigitalRune.Particles.Effectors
Assembly: DigitalRune.Particles (in DigitalRune.Particles.dll) Version: 1.4.0.0 (1.4.1.14427)
Syntax
public class ReserveParticleEffector : ParticleEffector

The ReserveParticleEffector type exposes the following members.

Constructors
  NameDescription
Public methodReserveParticleEffector
Initializes a new instance of the ReserveParticleEffector class.
Top
Methods
  NameDescription
Public methodBeginUpdate
Called when the particle system begins its update.
(Inherited from ParticleEffector.)
Public methodClone
Creates a new ParticleEffector that is a clone of the current instance.
(Inherited from ParticleEffector.)
Protected methodCloneCore
Makes the instance a clone of the specified ParticleEffector.
(Overrides ParticleEffectorCloneCore(ParticleEffector).)
Protected methodCreateInstanceCore
When implemented in a derived class, creates a new instance of the ParticleEffector derived class.
(Overrides ParticleEffectorCreateInstanceCore.)
Public methodEndUpdate
Called when the particle system finishes its update.
(Inherited from ParticleEffector.)
Public methodEquals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodGetHashCode
Serves as a hash function for a particular type.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodInitialize
Initializes this particle effector.
(Inherited from ParticleEffector.)
Public methodInitializeParticles
Initializes new particles.
(Inherited from ParticleEffector.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Protected methodOnBeginUpdate
Called when BeginUpdate(TimeSpan) was called.
(Overrides ParticleEffectorOnBeginUpdate(TimeSpan).)
Protected methodOnEndUpdate
Called when BeginUpdate(TimeSpan) was called.
(Inherited from ParticleEffector.)
Protected methodOnInitialize (Inherited from ParticleEffector.)
Protected methodOnInitializeParticles (Inherited from ParticleEffector.)
Protected methodOnRequeryParameters (Overrides ParticleEffectorOnRequeryParameters.)
Protected methodOnUninitialize (Overrides ParticleEffectorOnUninitialize.)
Protected methodOnUpdateParticles
Called when UpdateParticles(TimeSpan, Int32, Int32) was called.
(Overrides ParticleEffectorOnUpdateParticles(TimeSpan, Int32, Int32).)
Public methodRequeryParameters
Requeries the particle parameters.
(Inherited from ParticleEffector.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodUninitialize
Uninitializes this particle effector.
(Inherited from ParticleEffector.)
Public methodUpdateParticles
Updates particles.
(Inherited from ParticleEffector.)
Top
Properties
  NameDescription
Public propertyEnabled
Gets or sets a value indicating whether this ParticleEffector is enabled.
(Inherited from ParticleEffector.)
Public propertyName
Gets the name of this particle effector.
(Inherited from ParticleEffector.)
Public propertyParticleSystem
Gets or sets the particle system.
(Inherited from ParticleEffector.)
Public propertyReserve
Gets or sets the number of particles to reserve.
Top
Remarks
The number of particles in each ParticleSystem is limited (see MaxNumberOfParticles). If the limit is reached, no more new particles can be emitted until existing particles die. The ReserveParticleEffector monitors NumberOfActiveParticles and if less than Reserve particles are left, it kills the oldest particles (by setting their "NormalizedAge" to 1) in its OnUpdateParticles(TimeSpan, Int32, Int32) method. This effector ensures that there are always free particles ready to be emitted. Usually, this effector should be added as the last effector to the Effectors collection of the particle system because it should be updated after all other effectors.
See Also