@c -*-texinfo-*-
@node MeshObject PartSys, MeshObject Haze, MeshObject Emit, MeshObject
@subsection Particle Systems in General
@cindex MeshObject
@cindex Particle Systems
@cindex @code{iMeshObject}
@cindex @code{iMeshObjectFactory}
@cindex @code{iMeshObjectType}
@cindex @code{iParticleState}

@emph{Written by Jorrit Tyberghein,
@email{jorrit.tyberghein@@gmail.com}.}

This section explains everything that is common to all particle systems.
Go to the specific particle system section for more information about
a particle system in particular.

@subsubheading Particle State Interface

Use the @samp{iParticleState} @sc{scf} interface to access settings for
particle systems in general.  The definition of this interface can be found in
@file{CS/include/imesh/partsys.h} and that's also the include file you need to
include in your applications to use particle system plugins.  Using this
interface you can access the material, blending mode (mixmode), color, and
various other parameters.

@subsubheading Object Loader

Every particle system will at least have the following keywords in
the loader for the object. In addition it will add particle system specific
keywords which are explained in the respective sections.

@table @code
@item <factory>factoryName</factory>
Name of the factory to use for creation of this instance.
@item <mixmode><mode /></mixmode>
Blending mode, one of @samp{add}, @samp{alpha}, @samp{copy}, @samp{keycolor},
@samp{multiply2}, @samp{multiply}, or @samp{transparent}.
@item <material>materialName</material>
Material to use for the particle system.
@item <color red="" green="" blue="" />
Color to use for all particles.
@end table

