Crowd Particle Emitters

 
 
 

After you have selected an actor for the crowd simulation, you can choose the emitter for the particles. An instance of each actor will be attached to each particle upon emission.

As with a typical ICE particle simulation, the particles used in a CrowdFX simulation are emitted from one or more emitters. This can be an object you select, a special directional emitter (for pedestrian simulations), or a combination of both types.

Each emitter you select or draw is added to the Emitters group in the Crowd model (see Anatomy of a Crowd Simulation).

If you don't want to use specific emitter objects, a default emitter object is created automatically when you create either a pedestrian or stadium crowd simulation - see Creating the Crowd Particle Simulation.

Using Directional Emitters

Directional emitters are polygon meshes with custom properties, and are used in pedestrian (locomotion-type) crowd simulations. They can assign an initial direction for the particle (and therefore the actor that is instanced to that particle) upon emission, as indicated by an arrow, which may be bidirectional. When you run the particle simulation, the actors will initially move in the direction indicated. Of course, you can set the orientation of the particles upon initialization, as described in Setting Up the Crowd Particle Emission.

To create directional emitters:

  1. Choose the CrowdFX Crowd Create Draw Directional Emitter command from the ICE toolbar.
  2. Use the drawing tool to define the area for particle emission. This emitter is drawn on the XZ plane, and the arrow shows the direction in which the actors will move when you create the particle simulation.

    The directional emitter object is added under the Emitters_Root node and to the Emitters group in the Crowd model.

    As well, the Set Emitter Data ICE tree is created in the Modeling region of the emitter object.

  3. Choose the Draw Directional Emitter command for each emitter you want to draw.
  4. When you're done, you can transform the emitter as you like, such as to rotate it to change the direction of the actors.

Using Surface Objects as Emitters

You can one or more surface objects (polygon mesh or NURBS surface) as particle emitters for a crowd simulation. The particles are oriented in the global Z direction upon emission.

For pedestrian simulations, particles are emitted from an object's surface by default, so it's probably best to use flat objects, such as grids or discs.

For stadium simulations, you need to create horizontal polygon meshes (usually grids) as the emitter object: one particle is emitted from each polygon on the object. You can change the emitter's resolution to change the number of particles.

If you are using several emitter objects of different sizes and they are in a group, the number of particles that are emitted per object is determined by the mesh with the fewest polygons. To solve this problem, simply merge all objects into a single mesh object to use as an emitter so that one particle is emitted per polygon.

To use surface objects as emitters:

  1. Select one or more surface objects. If you're using a hierarchy of objects, branch-select the parent object.
  2. Choose the CrowdFX Crowd Create Add Emitter(s) from Selection command from the ICE toolbar.

    The emitters are added to the Emitters group, but are not added under the Emitters_Root null in the Crowd model. However, you can move the emitter object to be under this null for easier management of all emitters.

Note

If you drag the objects directly into the Emitters group in the Crowd model in the explorer, the Set Emitter Data compound is not automatically created for the emitter object. However, you can create an ICE tree for the emitter and plug the Set Emitter Data compound in there.

Editing the Emitter

To edit an emitter, you can open the Set Emitter Data compound that's in its ICE tree.

Among other options, you can set the emitter's ID to a unique value when you want to identify the emitter for a specific effect, such as emitting actors with specific materials from a specific emitter (such as in Modifying the Actor's Materials and Textures). The Get Crowd Emitter ID compound lets you easily use this data in an ICE tree.

For directional emitters, you can also select the Create Grid option and then increase the U/V Subdiv values for better resolution on the emitter. This allows you to emit particles at each point on the emitter or use weight maps to filter the emission - see Using Weight Maps to Define Emission Areas.

Adding or Duplicating Emitters

You can add an emitter to the current crowd at any time using the appropriate Emitter command from the ICE toolbar.

If you duplicate an emitter, its copy is automatically added to the Emitters group. You can then edit its properties in its Set Emitter Data compound.

Hiding or Displaying the Emitters

To toggle the hidden state of all emitter objects in the Emitters group, do either of the following: