Creating ICE Particle Emissions
When you emit particles from an element, you create a set of points called a point cloud. Each point cloud has its own ICE tree associated with it when you emit particles. You can have any number of point clouds in a scene.

When you create a particle emission, there are four nodes/compounds in the ICE tree that you need as a base:
• The ICETree node is the main node in an ICE tree. It processes all nodes and compounds connected to it as a simulation. See The Simulation Region and the ICETree Node for more information.
• The Simulate Particles node makes the particles move. It updates the position and velocity of each particle at each frame based on the particle’s mass, force, and velocity of the previous frame. See The Simulate Particles and Simulate Rigid Bodies Nodes for more information.
• An Emit compound is the particle emission compound that is responsible for creating the particles and giving them certain properties at emission. The Emit compounds are high-level nodes that wrap up many granular nodes to offer the most common particle emission options. Using different Emit compounds found on the Task > Particles tab in the ICE Tree’s preset manager, you can emit particles from different types of objects, as described in this section.
• A Get Data node represents the particle emitter object in the ICE tree and gets data from it.

You can create a particle emission by putting all the necessary nodes together manually in the ICE tree, or you can create a particle emission automatically from certain selected objects (surfaces, curves, and nulls) with the ICE > Create > Emit Particles From Selection command. See this section for information on how to use either method.
Particles are actually emitted only starting at the second frame of the simulation frame range. For example, if the start frame of the simulation is set to 1, the simulation starts then, but particles are not actually emitted until frame 2.
If you want the particles to be emitted at frame 1, enter 0 as the Offset value in the Simulation Time Control. See Setting Up the Simulation’s Playback Range for information.
From What Can You Emit Particles?
You can emit particles in any of these ways:
• From polygon meshes and NURBS surfaces—see Emitting Particles from Surfaces
• From curves—see Emitting Particles from Curves
• From nulls—see Emitting Particles from Nulls
• From within object volumes—see Emitting Particles from Volumes
• From any position in global space—see Emitting Particles from a Position in Space
• From multiple objects and groups of objects—see Emitting Particles from Multiple Objects or Groups
![]()
|
You cannot emit particles from implicit objects or from subdivided surfaces (particles are emitted from the hull). |
Setting Up a Particle Emission Manually
You can create any type of particle emission from scratch by creating and connecting nodes manually in the ICE Tree:
To set up a particle emission manually
1. Create a point cloud by choosing Get > Primitive > Point Cloud > Empty Cloud (or any of the shapes) from any toolbar.
2. With the point cloud selected, open the ICE tree by choosing ICE > Edit > Open ICE Tree or by pressing Alt+9. There is no tree yet, so you must create one.
3. From the menu bar of the ICE Tree, choose Create > Simulated ICE Tree. This creates an ICE Tree node that processes all nodes and compounds connected to it as a simulation. See The Simulation Region and the ICETree Node for more information.
4. Create one or more objects that will be the particle emitters. The type of Emit compound you use later depends on the type of object that the emitter is.
5. From an explorer, drag the emitter’s name into the ICE Tree view to create a Get Data node for it. This node simply represents that object in the ICE tree and gets data from it.
![]()
|
An easy way to do this is to select the object and press F3 so that a floating explorer opens, then drag the emitter’s name from there into the ICE Tree. |

6. From the preset manager on the left side of the ICE Tree, click the Task tab and select Particles from the drop-down list.

7. Select the Emitters group label and drag one of the Emit compounds into the ICE view. Don’t worry that the compound appears red—it’s because it’s not connected to anything yet.
8. Plug the emitter object’s Value output into the Emit compound’s Emitter1 port. Using the Emitter ports below this one, you can keep plugging in the Value outputs from several objects that you want as particle emitters.
9. Plug the Emit compound’s Emit output into the ICETree node’s Port1. The nodes plugged into the ICETree node are evaluated in order from the top down at every frame, and you want the particle emission to be the first thing that is evaluated.

10. In the preset manager, click the Tool tab, then drag the Simulation > Simulate Particles compound into the ICE view. This node updates the position and velocity of each particle at each frame based on their previous velocity and position, mass, and force attributes.
11. Plug the Simulate Particles node’s Simulate output into the bottom of the ICETree node (Port2 for now). Later on, you should add more ports to the ICETree node above this one so that you can add nodes after the particle emission but before the particles are actually simulated.
12. Double-click the Emit compound to open its property editor and set up the options to define the particle emission.
Emitting Particles from Surfaces
You can emit particles from polygon mesh and NURBS surface objects using the Emit from Surface compound. Particles originate from the entire surface of the emitter object.
This compound, the Emit from Curve compound, or the Emit from Null compound are the ones that are used when you select an object, null, and/or curve and choose the ICE > Create > Emit Particles from Selection command on the Simulate toolbar. If you select a combination of these objects, the appropriate Emit compound is created for each one.
To create a particle emission from the surface of an object
1. Select one or more polygon mesh or NURBS surface object that will be the particle emitters.
2. Choose ICE > Create > Emit Particles From Selection from the Simulate toolbar.
or
If you’re using the ICE layout, you can click the Emit Particles From Selection button in the panel in the upper-left.
A point cloud is automatically created, and the nodes shown below are automatically created and connected in the ICE Tree when you choose this command.
Remember that particles are emitted only starting the second frame of the simulation frame range, so you can play the simulation to see the particles appear.
A white bounding box around the particles indicates that the point cloud is selected.

3. Open the tree by choosing ICE > Edit > Open ICE Tree or by pressing Alt+9:

4. Double-click the Emit compound to open its property editor and set up the options to define the particle emission.
Emitting Particles from Curves
You can emit particles from NURBS curves using the Emit from Curve compound. Particles can be emitted in all directions from the curve or just along the curve’s U direction.
This compound, the Emit from Surface compound, or the Emit from Null compound are the ones that are used when you select an object, null, and/or curve and choose the ICE > Create > Emit Particles from Selection command on the Simulate toolbar. If you select a combination of these objects, the appropriate Emit compound is created for each one.

To emit particles from curves
1. Select one or more NURBS curves that will be the particle emitters.
2. Choose ICE > Create > Emit Particles From Selection from the Simulate toolbar.
3. Choose ICE > Edit > Open ICE Tree or press Alt+9 to open the ICE Tree.
4. Double-click the Emit compound to open its property editor and set up the options to define the particle emission.
To set up the particle emission from curves manually
You can also create a curve particle emission from scratch and connect the nodes manually in the ICE Tree:
Follow the steps in Setting Up a Particle Emission Manually using one or more NURBS curves as the particle emitters and connecting the Emit from Curve compound in the ICE tree.
You can emit particles from a null using the Emit from Null compound. This is useful for emitting particles from a specific spot anywhere in a scene without having the emitter rendered or having to hide it so that it isn’t rendered. The particles are emitted from the null’s center, regardless of the null’s icon shape.
If you are emitting particles from multi-selected null objects, a separate Emit from Null compound is created for each null emitter instead of multiple nulls being connected to one Emit from Null compound (see Emitting Particles from Multiple Objects or Groups). This allows you to define each emission separately.
If you want to emit particles from a cluster, you can constrain a null to a cluster on an object, then emit particles from that null. A separate Emit from Null compound is created for each null emitter.

To emit particles from a null
1. Select one or more null objects that will be the particle emitters.
2. Choose ICE > Create > Emit Particles From Selection from the Simulate toolbar.
A point cloud is automatically created, and the appropriate nodes are automatically created and connected in the ICE Tree.
3. Open the tree by choosing ICE > Edit > Open ICE Tree or by pressing Alt+9.

4. Double-click the Emit compound to open its property editor and set up the options to define the particle emission.
To set up the particle emission from a null manually
You can also create a null particle emission from scratch and connect the nodes manually in the ICE Tree:
Follow the steps in Setting Up a Particle Emission Manually using one or more null objects as the particle emitters and connecting the Emit from Null compound in the ICE tree.
You must also connect the null emitter’s Out Name output into the Null Name port on the Emit from Null compound.
Emitting Particles from Volumes
You can emit particles from within the volumetric boundaries of polygon mesh or NURBS surface objects using the Emit from Volume compound. The particles fill the emitter object’s volume with an evenly distributed set of particles. This compound is useful for creating clouds, dust, or filling up a room with objects.
For the best results, you should select an object that is closed, meaning that there are no holes in it.

To emit particles from within a volume
1. Select one or more polygon mesh or NURBS surface objects that will be the particle emitters. This must be an object with volume.
2. Follow the same steps as in Emitting Particles from Surfaces.
3. In the ICE tree, select the Emitters group label and drag the Emit from Volume compound into the ICE view.
4. Disconnect the Emit from Surface compound from its nodes and substitute the Emit from Volume compound for it. Reconnect all the nodes to Emit from Volume in the same way as they were for Emit from Surface.

To set up the particle emission from a volume manually
You can also create a volume particle emission from scratch and connect the nodes manually in the ICE Tree:
Follow the steps in Setting Up a Particle Emission Manually using one or more polygon mesh or NURBS surface objects as the particle emitters and connecting the Emit from Volume compound in the ICE tree.
Emitting Particles from a Position in Space
You can emit particles from a specific location (position) in global space using the Emit from Position compound. You specify the XYZ coordinates in this compound’s property editor and the particles are emitted from there.
This is useful for emitting from anywhere in a scene without needing to have an emitter object, such as with fireworks or star fields.

To emit particles from a position in space
1. Follow the steps in Setting Up a Particle Emission Manually but creating no emitter and connecting the Emit from Position compound in the ICE tree.

2. Double-click the Emit from Position compound to open its property editor and specify the global XYZ position for the particle emission, as well as the other emission properties.
Emitting Particles from Multiple Objects or Groups
You can emit particles from multiple scene elements or from a group of objects. When there are multiple objects selected, the same point cloud is emitted from all the objects.
The amount of particles that are emitted (see ICE Particle Rate (Amount)) are distributed among all the emitters: it’s the total number of particles that are emitted from the point cloud, not the number of particles that are emitted per emitter object.

You can also use multiple Emit compounds (of the same or different type) plugged into the ICETree node to emit the same point cloud from the emitters. If you’re doing this, see Emitting the Total Number of Particles from Multiple Emit Compounds for a special issue.
To emit particles from multiple objects
There are three ways in which you can do this:
Method 1
1. Select multiple objects of any type to be emitters.
2. Choose ICE > Create > Emit Particles From Selection from the Simulate toolbar.
A point cloud is automatically created, and the appropriate Emit compound (that is, Emit from Surface, Emit from Curve, or Emit from Null) is created to match the type of emitter object you selected.
If the particle emitters are all the same type of object, only one Emit compound is created with all emitters plugged into it. However, with multi-selected nulls, a separate Emit from Null compound is created for each null emitter.

Method 2
1. Follow the steps in Setting Up a Particle Emission Manually.
2. From an explorer, drag each emitter object’s name into the ICE tree to create a Get Data node for it.
![]()
|
An easy way to do this is to select the object and press F3 so that a floating explorer opens, then drag the emitter’s name from there into the ICE Tree. |
3. Plug the Value output from each emitter’s node into consecutive Emitter ports on the same Emit compound or other Emit compounds.
The same point cloud particles are emitted from each of the multiple objects.
Method 3
1. Create a particle emission either manually or by using the ICE > Create > Emit Particles from Selection compound.
2. In the point cloud’s ICE Tree, click the Tool tab in the preset manager and drag the Geometry Queries > Group Geometry node into the ICE tree.
3. From an explorer, drag each emitter object’s name into the ICE view to create a Get Data node for it.
4. Plug the Value output from each emitter’s node into consecutive Geometry ports on the Group Geometry node.
5. Plug the Result output from the Group Geometry node into consecutive Emitter ports on the same Emit compound or other Emit compounds.

Emitting Particles from a Group
Emitting particles from a group of objects yields the same results as emitting from multiple objects. The advantage of groups is that you can add objects to the group and have the particles automatically emitted from them without having to bring them directly into the ICE tree and connecting them.
To emit particles from a group
1. Create a particle emission either manually or by using the ICE > Create > Emit Particles from Selection compound.
2. Create a group (press Ctrl+G) with the emitter objects in it.
3. From the explorer, drag the group name into the ICE Tree to create a Get Data node for the group.
4. Plug the Result output from the Group node into consecutive Emitter ports on the same Emit compound or other Emit compounds.
The same point cloud particles are emitted from each of the objects in the group.

Emitting the Total Number of Particles from Multiple Emit Compounds
While it is possible to emit the same point cloud from many emitters, there is an issue to consider when emitting a static number of particles (Total Number of Particles as the Rate type—see ICE Particle Rate (Amount)).
Each emitter has a Seed value which helps uniquely identify emitters in the ICE tree. Once an emitter with the Total Number of Particles option has emitted particles, the Seed value is stored so that the emitter does not emit again.
If two emitters use the same Seed value and also use the Total Number of Particles option, then only the first emitter will emit particles. By default, the different Emit compounds have different default Seed values, but if you use two Emit compounds of the same type emitting the same point cloud, they will have the same Seed value.
To fix this, simply change the Seed value in each Emit compound to any random number that is different from the other Emit compounds, then all emitters will emit correctly.
Using the Emit Blast compound, you can create a particle emission that emits particles in a short burst over a certain number of frames. This compound is useful for doing effects such as flowers releasing pollen into the air or objects exploding into pieces, especially when used with instanced geometry.
The particles are emitted away from a certain position that you define or from a null object that you use as a controller.

To set up a blast particle emission
1. Select one or more polygon mesh or NURBS surface objects that will be the particle emitters. Surface type objects give the best results for creating a blast effect.
2. Follow the steps as described in Setting Up a Particle Emission Manually, adding or changing these steps:
- Drag the Emit Blast compound into the ICE tree and connect it as the other Emit compounds.
- Create a null as a controller object that determines the center of the blast: the particles will be emitted away from this null. Drag the null’s name from an explorer into the ICE graph to create a node for it.
- Plug the null’s Out Name output into the Spray Origin Controller port of the Emit Blast compound.

3. In the Emit Blast compound property editor, the main parameters to set are the amount of particles that are blasted, the profile curve for the emission rate over the duration of the blast, the profile curve for the velocity of the particles over the duration of the blast, the velocity, and the amplitude of the blast.
For more information on the parameters, click the ? icon in the property editor or see Emit Blast.
Emitting Particle Trails at Object Intersections
The Emit Trail at Surface Intersection compound emits particles from the point at which another object intersects with the particle emitter. This compound is useful when using an animated object that intersects with the emitter for creating mud tracks, skid marks, paint brush strokes, or bullet marks on surfaces.

To emit particles at object intersections
1. Select one or more polygon mesh or NURBS surface objects that will be the particle emitters.
2. Follow the steps as described in Setting Up a Particle Emission Manually, adding or changing these steps:
- Drag the Emit Trail at Surface Intersection compound into the ICE tree and connect it as the other Emit compounds.
- Create one or more objects that intersect with the emitter object and drag their names from an explorer into the ICE view to create node for them. These objects must have a surface so that they can intersect with the emitter object. It also works best if these objects are animated.
- Plug each intersection object’s Value output into a Trail Geom(etry) port on the Emit Trail at Surface Intersection compound.

3. In the Emit Trail at Surface Intersection compound property editor, you can set the rate and falloff of the particle emission within the intersection area, as well as changing the size of the particle based on velocity.
For more information on the parameters, click the ? icon in the property editor or see Emit Trail at Surface Intersection.
Spreading the Particle Emission Over a Frame
Sometimes when a particle emitter is moving very quickly, you may see clumps or bands of particles appearing as the emitter moves through space. In this case, empty spaces occur between particle emissions because particles are emitted only at every frame, and the velocity of the emitter is too high to keep up with the emission.
The Fast Moving Emitter option can help smooth out streams of emitted particles so that there is no banding. It spreads the particles emission evenly over each frame to create a continuous particle stream.
To create a continuous particle stream with fast moving emitters
• Select the Fast Moving Emitter option in any of the Emit compound’s property editor.

ICE Particle Emission Attributes
There are several particle attributes that are used to define particle emissions. Many of these attributes are used within the Emit compounds, but you can also use these attributes in their own Get Data and Set Data nodes in the ICE tree—see Using ICE Particle Attributes for information on how to do this.
For more information on attributes in general and a list of all available ICE attributes, see ICE Attributes.
|
EmitLocation |
The location on a surface at which a particle was emitted, meaning that each particle has its own unique emit location. This attribute is set automatically by the Emit compounds except for Emit from Null and Emit from Position because there is no geometry used for these compounds. When emitting from a volume, the location is an offset from the object center and is not affected by deformation. You can get the EmitLocation attribute with the Get Particle Emit Location compound, or simply specify the attribute name in a Get Data node. You can use this attribute with some of the Surface Interaction compounds that allow you to use the Emit Location for particles (see ICE Particle Surface Interaction Behaviors). You can also use this attribute with different properties of an object, such as weight maps or texture maps. For example, you can use a texture map on a particle emitter object to color each particle based on its emit location. |
|
EmitPosition |
The position at which a particle was originally emitted. This attribute is set automatically by the Emit compounds. Unlike the EmitLocation attribute, EmitPosition does not move with an animated or deformed geometry. You can use this attribute with some of the Surface Interaction compounds that allow you to specify the Emit Position for particles (see ICE Particle Surface Interaction Behaviors). |
|
Init |
This attribute is False if a point was created on the current frame, and true otherwise. It is automatically set by the Add Point and Clone Point nodes, as well as by compounds that contain them, such as the Emit and Spawn compounds. You can use this attribute to distinguish between new and old particles. For example, you can set data on only new particles even in compounds that don't have access to the On Execute ports of Add Point and Clone Point. |
|
Init_Color |
A particle's original (initial) Color value when it is emitted. See Particle Color Attributes for more information. |
|
Init_Force |
A particle's original Force value when it is emitted. See Force Attributes for more information. |
|
Init_Mass |
A particle's original Mass value when it is emitted. See Particle Mass Attributes for more information. |
|
Init_Orientation |
A particle's original Orientation value when it is emitted. See Particle Orientation Attributes for more information. |
|
Init_PointVelocity |
A particle's original PointVelocity value when it is emitted. See Particle Velocity Attributes for more information. |
|
Init_Scale |
A particle's original Scale value when it is emitted. See Particle Size and Scale Attributes for more information. |
|
Init_Size |
A particle's original Size value when it is emitted. See ICE Particle Size for more information. |
To change particle emitters, you simply swap emitters that are plugged in to the Emit compound. Simple as that. Of course, the emitter object must match the Emit compound’s geometry type, such as surface, curve, null, etc. This makes it easy to share compounds with others because you can easily switch one emitter for another: the same effect contained within the compound is simply created using a different emitter.
To change particle emitters
There are two ways you can do this:
1. In the ICE tree, open the existing emitter’s Get Data node.
2. Enter the new emitter’s name in the text box or click the Explorer button and select it from the explorer.
or
1. From an explorer, drag the new emitter object’s name into the ICE view to create a Get Data node for it.
![]()
|
An easy way to do this is to select the object and press F3 so that a floating explorer opens, then drag the emitter’s name from there into the ICE Tree. |
2. Drag this Get Data node on top of the existing emitter object’s connection to the Emitter port on the Emit compound. The new emitter object automatically replaces the old one.
The particles are now emitted from the new object.
Limiting the Particle Emission Time Range
Using the Limit by Time Range compound, you can limit the particle emission to occur only within a certain range of frames. These values must be between the Offset and Duration values that are currently set in the Simulation Time Control (see Setting Up the Simulation’s Playback Range).
To limit the emission time range
1. Create a particle simulation, as described in this section.
2. From the preset manager on the left side of the ICE Tree, click the Task tab and select Particle.
3. Drag the Limit by Time Range compound from the Emission Control group into the ICE view.
4. Plug its Enable Emitter output into the Enable port of the Emit compound.
5. In the Limit Time Range property editor, set the range of frames to which you want to limit the particle emission:
- Select Use Start Frame to use the Start Frame that you specify. If you don't use the Start Frame, the particles are emitted from the first frame of the simulation.
- Enter a Start Frame for the first frame on the timeline that you want to use for the particle emission range. Remember that particles are actually only emitted the frame after this frame number.
- Select Use End Frame to use the End Frame that you specify. If you don't use the End Frame, the particles continue to be emitted until the end of the simulation.
- Enter an End Frame for the last frame on the timeline that you want to use for the particle emission range. Particles are not emitted anymore after this frame.
6. Play back the simulation and see how the particles are emitted only within the range you’ve specified.
Muting temporarily disables the particle emission. This lets you lets you isolate and fine-tune the effects of other particle emissions in the scene, or simply play back the scene’s animation without this emission being calculated as part of it.
As well, you can animate the muting to do such things as having particle bursts being intermittently emitted.
To mute the particle emission
• Deselect the Enable option in any of the Emit compound’s property editor to mute only that particle emission.
![]()
|
If you select the Mute option in the Simulate Particles compound’s property editor, the particles can still be emitted, but they are not updated at each frame. |
Disconnecting a Particle Emission
To disconnect a particle emission
• Disconnect the Emit compound’s Execute output from the ICETree node’s Port. This disables the particle emission, as well as all compounds and nodes that are connected to that Emit compound.
Autodesk Softimage v.7.5