public override void AffectParticles( ParticleSystem system, float timeElapsed )
{
Vector3 scaledVector = Vector3.Zero;
if ( forceApp == ForceApplication.Add )
{
// scale force by time
scaledVector = forceVector * timeElapsed;
}
// affect each particle
for ( int i = 0; i < system.Particles.Count; i++ )
{
Particle p = (Particle)system.Particles[ i ];
if ( forceApp == ForceApplication.Add )
{
p.Direction += scaledVector;
}
else
{ // Average
p.Direction = ( p.Direction + forceVector ) / 2;
}
}
}