Go to: Related nodes. Attributes.

Particle Age Mapper is a utility node that allows you to use a texture map to control a particle's color, transparency or incandescence when you are doing software particle rendering

Normally, this node is created automatically when you click on the map button beside the Life Color, Life Transparency, or Life Incandescence fields in the Attribute Editor of a Particle Cloud.

For example, if you map a "Cloth" texture to Life Color, you will get the following nodes and connections:

  ParticleAgeMapper     Place2dTexture          Cloth              ParticleCloud
  -----------------     --------------          -----              -------------
  out UV Coord -------> UV Coord
                        Out UV ---------------> UV Coord
                        Out UV Filter Size ---> UV Filter Size
                                                Out Color -------> Color
 
How it Works: Each time a particle in the Particle Cloud is rendered, the Particle Age Mapper knows its current age. This is converted to a number between 0 and 1, based on either the particle's total life-span, or another number that you provide (in the Time Scale attribute). The output of the Particle Age Mapper node is a UV coordinate --- the "U" value is always 0, and the "V" value is the number between 0 and 1.

Example:Say you want to have particles that are emitted white-hot, then cool to red over their lifetime, before disappearing. To do this, use a Particle Age Mapper with a Ramp texture, set to type V Ramp. The ramp should go from white at the start to red at the end. In the Particle Age Mapper, turn on Relative Age. When the particles are rendered, the "young" particles will have a low value for age, and therefore take their color from the beginning (white) part of the ramp. Older particles will get their color from the other end of the ramp.

In the table below, important attributes have their names listed in bold in the description column.

This node is MP safe

Node nameParentsMFn typeCompatible function sets
particleAgeMapperdependNodekParticleAgeMapperkBase
kNamedObject
kDependencyNode
kParticleAgeMapper

Related nodes

particleTranspMapper, particleColorMapper, particleIncandMapper, particleSamplerInfo, particleCloud

Attributes (8)

foldAtEnd, outUCoord, outUvCoord, outVCoord, particleAge, particleLifespan, relativeAge, timeScale

Long name (short name)TypeDefaultFlags
outUvCoord (ouv) float2outputconnectable
Out UV Coord is the output coordinates calculated by this node. The "U" value will always be 0, and the "V" value will be based on the age of the particle being rendered.

This attribute should be connected to the UV Coord attribute of a texture placement node.

outUCoord (ouc) float0.0outputconnectable
Output U Coord (always 0)
outVCoord (ovc) float0.0outputconnectable
Output V Coord (based on particle age)
particleAge (pa) float0.0outputinputconnectablekeyablehidden
Particle Age
particleLifespan (pls) float0.0outputinputconnectablehidden
Particle Lifespan
relativeAge (rea) boolfalseoutputinputconnectablestorablekeyable
Relative Age: If you turn this on, then the output of this node (the V Coord) will be a fraction of the particle's total lifespan. That is, it will be a number between 0 and 1, where 1 is the total lifespan of the particular particle. So particles with a shorter lifespans will go through the whole texture quicker than particles with longer lifespans.

If you leave Relative Age turned off, then the output of this node (the V Coord) will be the particle's current age, divided by the value of the Time Scale attribute. For example, if Time Scale is set to 5 seconds, and the particle is 1 second old, then the output of this node will be 0.2. So all particles will take the same amount of time to go through the texture, regardless of their lifespans.

If the particle age is greater than Time Scale, this node will map it back to a number between 0 and 1, based on the Fold At End attribute (see below)

timeScale (ts) float1outputinputconnectablestorablekeyable
Time Scale is the time range over which the particles should use the whole texture. This attribute is only used when Relative Age is turned off. (see above).

Note: This value is always in seconds, not frames or anything else.

foldAtEnd (fae) boolfalseoutputinputconnectablestorablekeyable
Fold At End controls how this node deals with output values that go outside the 0 to 1 range. It is only meaningful when Relative Age is turned off, and some particles get older than the value of Time Scale.

If Fold At End is turned on, then values above 1.0 are "folded back", that is, turned around. If Fold At End is turned off, then the values are wrapped around back to 0. You can think of Fold At End ON meaning "oscillate" and Fold At End OFF meaning "Loop".

For example, lets say you set Time Scale to 10 seconds, and your particles live longer than that. Here is the output of this node:

Fold At End ON:
Particle Age:  7    8    9    10   11   12   13
Output V:     .7   .8   .9   1.0   .9   .8   .7
----
Fold At End OFF:
Particle Age:  7    8    9    10   11   12   13
Output V:     .7   .8   .9   1.0   .1   .2   .3