ParticleSystemReferenceFrame Property |
Namespace: DigitalRune.Particles
[ContentSerializerAttribute(Optional = true)] public ParticleReferenceFrame ReferenceFrame { get; set; }
Each particle system has a Pose. This is like a transformation matrix that defines how the particle system is positioned relative to the Parent particle system, or relative to world space if the particle system does not have a Parent.
Usually, all particle positions, all rotation parameters, all direction parameters, etc. are relative to world space. A renderer which draws particles, can render them at the position specified by the position particle parameter. If the particle system moves (by changing its Pose), the particles do not move with the particle system.
In some cases, the particle should always be relative to particle system, for example, if the particles are used to render light-points that are fixed on a vehicle. In this case the particle positions must be relative to the Local space of the particle system. A renderer which draws particles must transform particle positions by the Pose of this particle system and all parent particle systems.