.. APEX IOFx Users Guide


.. _iofx-users-guide-label:


============================
APEX IOFx Users Guide
============================

.. image:: images/ParticlesIcon.JPG
    :height: 150
    :width: 150

Introduction
============

The IOFx provides the ability to control the parameters that determine if the particles should be
drawn as meshes or as sprites.  The parameters that determine how the mesh or sprites are drawn are
also in the IOFx asset.  These parameters are described in the documents referenced below\:

- `APEX Mesh IOFX Asset Parameters <../_static/build_params/structMeshIofxParameters.html>`_

- `APEX Sprite IOFX Asset Parameters <../_static/build_params/structSpriteIofxParameters.html>`_

IOFx Modifiers
==============

There are two types of IOFx modifiers, Spawn Modifiers that set the characteristics of the
particles when they are emitted and Continuous Modifiers that update the particles over time.
Characteristics such as the way the particles move, their size, and color can be set and modified.
There are modifiers that change the characteristics over time, particle density, velocity, and in a
random manner constrained by authorable limits.

The list of parameters and their descriptions for the various modifiers are described here:\

- `APEX Mesh IOFX Continuous Modifier Parameters <../_static/build_params/unionMeshIofxParameters_1_1ContinuousModifierList.html>`_

- `APEX Sprite IOFX Continuous Modifier Parameters <../_static/build_params/unionSpriteIofxParameters_1_1ContinuousModifierList.html>`_

- `APEX Mesh IOFX Spawn Modifier Parameters <../_static/build_params/unionMeshIofxParameters_1_1SpawnModifierList.html>`_

- `APEX Sprite IOFX Spawn Modifier Parameters <../_static/build_params/unionSpriteIofxParameters_1_1SpawnModifierList.html>`_

**Notes**\:

- All color channels (RGBA) for a particle are initialized with a value of 1.0 when spawned.

- If a continuous modifier for color is present, no spawn modifier for color is necessary.

- Color modifiers in the continuous modifier stack are executed in the order they appear in the stack (0 through n)

- The first color modifier in the continuouts modifier stack ''sets'' the color, following color modifiers will ''multiply'' the color

- Using a rotation modifier with an orient along screen velocity modifier (or an orient scale along screen velocity modifier) is not 
  recommended and may result in undetermined particle behavior.  If you do use both modifiers together, the modifier nearest to the bottom 
  of the modifier stack will take predominance.

Example
=======

    :ref:`IOFx Example <IofxExample>`
