sealed class Tinman.AddOns.Scenes.ParticleEffect

Full source code is included in the Tinman 3D SDK download.

A scene entity that create a particle effect.

The particle simulation takes place in the local coordinate system that is defined by ILocalSpaceProperty.LocalSpace and is run by a ParticleBuffer object which must be specified at creation time. Different particle geometry may be specified per identifier via Geometry. New particles are generated by IParticleSource objects, which may be specified via SourceAdd and SourceRemove. By default, particle simulation is driven by the application frame time (see IUpdateableFrameTime.UpdateFrameTime. With UseTimestamp, this can be changed to use the value increments of Timestamp instead.

Public / Constructors


public constructor ParticleEffect → (2)

buffer in : ParticleBuffer own

The particle buffer to use.

entityViewMask opt : int64 = -1

The value for IEntityViewMask.EntityViewMask.

Creates a new instance of ParticleEffect.

Public / Methods


public method Geometry → (1)

geometryId opt : int32 = 0

The geometry ID, see ParticleBuffer.GeometryId.

returns → ParticleGeometry

The ParticleGeometry object for geometryId opt.

Returns the ParticleGeometry object that represents the given


public method RandomSeed → (1)

seed in : int32

The seed value.

Seeds the pseudo-random number generator.


public method SourceAdd → (1)

source in : IParticleSource

The particle source to add.

Adds the given particle source.


public method SourceRemove → (1)

source in : IParticleSource

The particle source to remove.

Removes the given particle source.

Public / Attributes


public attribute TimeDelta → (get)

value : float64

The time difference, in seconds.

Returns the difference between the timestamp that will be used when creating new particles and the timestamp of the particle data that is currently being displayed.


public attribute Timestamp → (get,set)

value : float64

The timestamp (see GeoPathSample.Timestamp).

The timestamp value to consume.


public attribute UseTimestamp → (get,set)

value : bool

true to use the timestamp value that is provided by ITimestampConsumer.Timestamp,
false to use the accumulated frame time, see IUpdateableFrameTime.UpdateFrameTime.

Use the provided timestamp value instead of the accumulated frame time for running the particle effect?

When using an animation timestamp, the particle effect simulation will either be paused or will be running forward in time, reverse animation is not performed. Defaults to false.