/**** Particle System Properties ****/
Name = TestParticles

// Particle System Options:

//TagRender // specify to individually mark particles for render in a global system.
//VisCheckOnCreation // specify to avoid creating particles that are not immediately visible.
//LightOnCreation // specify to have particles affected by scene lights.
//AnimateTextures // textures animate over the life of the particle.
//AdditiveTextures // textures add light to the background (default is an alpha blend).
//ClipParticlesWithinRange // destroy any particles that get outside of range.
//WrapParticlesWithinRange // wrap any particles that get outside of range.

// Particle source art - specify path, otherwise uses material if a mesh attachment.
SourceArt = data/particles/steamB.tga
NumTextureAnimationLoops =0

// Particle system limits
MaxParticlesLowDetail = 300
MaxParticlesHighDetail = 500
DefaultParticleSize = .8
DefaultLifespan = 4
Range = 4 // max range of the particles from the source (specify in flags whether or not to clip.)
MinPixels = 2
MaxPixels = 10


// Specify a refernce size so that we can scale this system to objects of different size.
EmitScalarReference = 4.0f

/**** Individual Module Properties Below Here ****/

VolumeGenerator = {
  ParticlesPerSecond = 14 // generation rate
  EmitCount = 1 // number emitted at a time.
  EmitOffset = 0, -.25, 0 // lower left coordinate of emit region
  EmitDimensions = 0, 0, 0 // size of emit region
  BoundaryVariance = 0 // random offset in meters to the boundary
  GeometryType =  POINT // geometry type fitted to box. Choices are: (POINT, BOX, SPHERE, PYRAMID, CONE, CYLINDER, CYLINDER_SHELL, SPHERICAL_SHELL, SPHERE_CW).
  Timing= {1}

InitialVelocity = {
  BoundaryOffset = 0, -2, 0// lower left coordinate of emit region
  BoundaryDimensions = .3, .3, 0// size of emit region
  BoundaryVariance = 0 // random offset in meters to the boundary
  GeometryType = SPHERE // geometry type fitted to box. Choices are: (POINT, BOX, SPHERE, PYRAMID, CONE, CYLINDER, CYLINDER_SHELL, SPHERICAL_SHELL, SPHERE_CW).
  // Flags (specify without '//' to enable).
  RelativeEmitDirection // specify to have velocity be relative to the emitter direction.
  //RelativeEmitVelocity // specify to have velocity be relative to emitter velocity.
  //CalculateAsImpulse // calculate as an impules. (INITIAL MASS MUST COME FIRST IF THIS IS USED!!!)

PositionUpdater = {
  GlobalVelocity = 0.200000, 0.000000, 0.000000 // velocity to be added to every particle.

LinearDrag = {
  DragConstant = -.3 // drag constant (less than 0 = slow down, greater than 0 = speed up. Weights acceleration by current speed and inverse of mass.
}

GrowthRate = { //increases the size of the particle 
  // Specify a function whose range is the particle life (0 to 1) and // has variation
  // whose value is the growth rate (in percent of current size per second. i.e. 1.0 is to double every second)
  function( type=(0,.1,.2,.3,.7) )

2DRotation = {
  MinInitialRotationalVelocity = 0.300000 // Radians per second (any direction)
  MaxInitialRotationalVelocity = 0.900000 // Radians per second (any direction)
  RotationalVelocityPerSpeed = 0.000000 // (optionally specify to link rotational velocity to speed)
  //LinkRotationSpeedToLinearSpeed // specify to scale rotational speed up with particle linear speed.
}

InitialVariance = {
  SizeVariance = 0.200000 // maximum percent variance to the initial particle size .
  LifeVariance = 10.00000 // maximum percent variance to the particle's life.
  //Color1 = 205, 205, 205, 0 // color bound 1
  //Color2 = 255, 255, 255, 0 // color bound 2 (actual color can be anwhere between color1 and color2)
}

PlanarAcceleration = {
  Direction = 0, 0, .8 
  //RelativeToEmitter // specifiy to have force vectors be relative to the emitter.
  //FunctionTimingToLife // specify to have timing function be across particle life.
  //CalculateAsForce // calculate as a force (i.e. divide by particle's mass).
  // timing function - allows acceleration amount to vary over time.
  TimingFunction = { (function( type=(1, 1), P, period=3) }
}


AlphaFunction = { // fade out over time use 0 to 255
  // Specify a function whose range is the particle life (0 to 1) and
  // whose value is the alpha channel of the color (0 to 255)
  function( type=(0,20,50))
}




StandardRenderer = {
}
