Birth Texture Operator

The Birth Texture operator uses an animated texture to calculate the timing, location, and scale of particles. In general, Birth Texture causes particles to emit from the object where the texture is white or a bright color.

The Birth Texture operator controls are available in two areas of 3ds Max. First, the Birth Texture rollout, which appears in Particle View, regulates the overall timing of particles.

Second, adding a Birth Texture operator to a Particle Flow system creates a 3D icon, or helper, that you can select in viewports. The icon is placed at the world origin (0,0,0). When you select this icon, the Parameters rollout opens on the Modify panel. These controls let you specify the timing, placement, and scaling of particles. You can also access the Birth Texture operator's parameters via the operator in Particle View, by clicking Initialization Parameters.

Birth Texture icon

Procedure

To use the Birth Texture operator:

  1. Create an object, and apply a material to it that includes an animated map with variations of light and dark colors. For example, you could apply a Checker map as the Diffuse map with an animated Offset parameter.
  2. Create a PF Source.
  3. In Particle View, replace the Birth operator with a Birth Texture operator. This creates the Birth Texture icon at the world center: 0,0,0.
  4. On the Birth Texture rollout in Particle View, set Emit Stop to 100 (or any other value you prefer) and turn off Lock To Emitters.
  5. Click Initialization Parameters. This selects the Birth Texture icon and opens the Modify panel.
  6. On the Modify panel, in the Timing group of controls, set Stop to the value you used in step 4.
  7. In the Emitter Objects group, select the object with the material as the emitter.
  8. At the top of the Parameters rollout, click Initialize Particle Emission.

    This process runs through the animation, and places particle seeds (white) on the object's surface where white or light areas appear.

    Tip: If no particles appear, try turning down the Whiteness setting in the Emission By group. This lowers the threshold of texture brightness required to emit particles.
  9. In Particle View, remove or disable the Position Icon operator and then play the animation.

    The seeds turn into particles whenever the area under the seeds turns white; the particles then move away from the object.

Interface

Birth Texture rollout

This rollout appears in Particle View when the Birth Texture operator is selected.

Emit Start
The frame at which the operator begins emitting particles.
Emit Stop
The frame at which the operator stops emitting particles. The exact timing of start and stop may vary due to the timing of individual particles, which depends on the emitter's animated texture.
Reset To Original Timing
Sets the Emit Start and Emit Stop values to the current values of Timing Start and Stop as initialized (that is, when you last clicked Initialize Particle Emission). If Emit Start and Emit Stop differ from the original timing, the particle timing is scaled to fit into the emission interval. This lets you change the overall timing of the emission without the long process of pre-calculation.
Lock On Emitters
Causes all particle pivot points to be "glued" to the emitter objects. This control is similar to the Lock On Emitter option of the Position Icon operator. It tells the Birth Texture operator to continue controlling particle position even after the particles are born.
Total Particles
This read-only value shows the total number of pre-calculated particles. The amount of particles actually generated depends on the Quantity Multiplier of the master PF Source object. If the multiplier value is less than 100%, the operator samples the pre-calculated particles. If the multiplier is greater than 100%, some particle seeds are able to generate multiple particles.
Initialization Parameters
Selects the Birth Texture icon and switches to the Modify panel to show controls related to the particle timing and placement pre-calculation (see following).

Parameters rollout

This rollout is available on the Modify panel when you select the Birth Texture icon or click Initialization Parameters (see preceding).

[concentric color box]
The color of this icon indicates the calculation status of particle seeds. When blue-green, the operator has generated particle seeds according to the current set of parameters, and is up to date. When red, parameters have been changed since the last initialization, and you must update the particle seeds by clicking Initialize Particle Emission.
Initialize Particle Emission
Click to calculate particle seed timing, placement and scaling according to the current set of parameters. If the emitters geometry or textures are complex, the initialization process can be lengthy. The overall progress of calculation is indicated as a percentage in the status bar. When calculation is complete, the Green/Red concentric color box turns green.

This option is available only after you have picked at least one emitter in the Emitter Objects group.

Quantity group

The Birth Texture operator offers several methods for determining the quantity and placement of particle seeds. In general, each of these methods covers the emitter with the maximum number of particle seeds allowed for the chosen method, then the texture's coloring or brightness defines if and when a seed is converted to a particle.

Note: These parameters control particle seeds, not the particles themselves. A particle seed is converted to a particle based on the parameters in other rollouts, and on the color and brightness of the texture itself.

Choose one option in this group:

  • Amount Randomly covers the emitter surface with the specified number of particle seeds. Then the animated texture is used to define if and when a seed generates a particle. This option can be used when you don’t want particles to be generated in the same place multiple times when the texture is animated.
  • Max. Rate Sets the maximum number of particles that can be generated per frame over the entire surface, when the texture color exceeds the Whiteness value. The rate is expressed in particles per frame. First, the emitter surface is randomly covered with seeds at the Max. Rate, starting with the Start frame. Then the texture for the current frame defines at that frame whether each seed generates a particle. The unused seeds are not used. At the next frame, a new set of particle seeds is generated. This option generates particle seeds in this manner from the Start frame to the Stop frame. This option can be used when it doesn't matter whether particles are generated in the same place multiple times.
  • Separate Sets the distance by which particle seeds are separated, in units. The emitters surface is evenly covered with particle seeds, and the seeds are placed in such a way that they are separated by the Separate value. Then the animated texture is used to define if and when a seed generates a particle. The Separate option guarantees the absence of dense clusters and overlapping particles. This option guarantees that particles will not be generated in the same place multiple times.

    When you choose Separate, two additional options become available:

    • Adjust By Scale Factor When the Separate option is chosen and you’ve specified a Scale Factor option other than None, this option adjusts the separation distance according to particle scale. In other words, when Adjust By Scale Factor is on, Particle Flow can place smaller particles closer together, while increasing the distance between larger particles.
    • Fast Approx. Separation
  • Vertices/Edges Places particle seeds on surface vertices. The total amount of particle seeds is defined by the number of vertices.
    • Subdivide Places particle seeds on visible edges as well as vertices. The seeds are distributed evenly along edges, spaced by a distance approximately equal to the Subdivide value. Then the animated texture is used to define if and when a seed generates a particle. The total amount of particle seeds is defined by the number of vertices, and the lengths of visible edges.
  • Faces Places particle seeds at face centers. If the Subdivide option is on then each face is subdivided to a point when every faces edge is less then the Subdivide value, and a particle seed is placed at the center of the sub-faces. Then the animated texture is used to define if a seed generates a particle, and when. The total amount of particle seeds is defined by the number of faces and their size (if Subdivide is on). The Faces option with Subdivide on generates the most evenly distributed particles over the emitter surface, with some regular properties. If the Subdivide value is less then a particle size then the particles are able to cover the entire emitter surface without any holes.
    • Subdivide The option is available for the Vertices/Edges and Faces amount types only. When On, edges and faces are subdivided to generate the greater amount of particles.
Amount Limit
This control is available if you choose Vertices/Edges or Faces and also turn on Subdivide. Small values of Subdivide can generate so many particle seeds that they exceed available memory: this value limits the number of seeds, so 3ds Max doesn’t hang. Range = 10 to 50000000 (fifty million). Default=1000000 (one million).
Total Amount
This read-only value shows the total number of particles pre-calculated for the emission. Because the animated texture might not reach required whiteness level over the emitter surface, this value is usually smaller then Amount or Max. Rate*(Stop-Start) values.
Timing group

These aparameters determine the time interval over which particles are generated. The operator analyzes the emitter texture over the time interval, using the data to define the precise birth moment for each particle. The timing for each particle is stored as a floating-point value ranging from 0.0 to 1.0. This indicates its timing relative to the start (0.0) or end (1.0) of the interval and makes it possible to adjust the overall timing of the particle emission without recalculation.

You can also adjust particle timing in Particle View by changing the Emit Start and Emit Stop values.

Start
The first frame of the interval over which particles are generated.
Stop
The last frame of the interval over which particles are generated.
Delay Var
Variation in particle emission, in frames.
Latency
Causes particle seeds to accumulate brightness over time, and to be converted to particles only if they accumulate a certain brightness value. The Latency value is multiplied by the Whiteness % value to determine the whiteness that needs to be achieved. Then particle seeds accumulate Luminance values for the texture at each frame, and are converted to particles when they achieve the multiplied whiteness value. Latency can be used to cause a sweep of particles to be generated over a gradient map without having to animate the map.

For example, if Latency is off, Whiteness is 100%, and the texture where a particle seed resides is white [256,256,256], a particle will be generated. But if Latency is on and set to 3, the multiplied whiteness required to convert to a particle is 300%, which the particle seed accumulates after 3 frames.

Following are more examples of how adjusting Latency affects how particles are generated:

  • Texture color=[128,128,128] (50% brightness); Whiteness=100%; Latency=7: The particle seed requires 700% brightness to emit a particle, which would be achieved after 14 frames.
  • Texture color=[32,32,32] (12.5% brightness); Whiteness=50%; Latency=2: The particle seed requires 100% brightness to emit a particle, which would be achieved after eight frames.
Precision
The level of accuracy for particle timing calculation. If the texture has more than a single image per frame, to include the sub-frame images choose a sub-frame sampling method. The available choices are Frame, Half Frame, 1/4 Frame, 1/8 Frame.
Emission By group

Particle seeds are converted to particles when the particle seeds are located on an area of the texture that exceeds the Whiteness value. The parameters in this group define how Particle Flow interprets the texture information to see if it exceeds the Whiteness value.

The Emission By choices are as follows:

  • Material Gathers colors from the emitter's material.
  • Sub-Material Gathers colors from a single sub-material, and generates particles only on faces with the specified sub-material ID (Material ID). The sub-material ID is set by the Sub-Mtl ID parameter (see following).
  • Sub-Mtl Global Gathers colors from a single sub-material, and generates particles over the entire emitter surface regardless of the faces' Material IDs. The sub-material ID is set by the Sub-Mtl ID parameter (see following).
  • Vertex Color Gathers colors from the Vertex Color channel.
  • Vertex Alpha Gathers colors from the Vertex Alpha channel.
  • Vertex Illum Gathers colors from the Vertex Illum channel.
  • Mapping Gathers colors from a mapping channel. A mapping channel can be used by the Vertex Paint modifier to color vertices. The mapping channel index is defined by the Channel parameter.
Tip: For information about these channels, see the VertexPaint Modifier topic in the 3ds Max Help.
R/G/B
These buttons let you define the set of color channels to be considered for particle generation. For example, if only the R (red) button is active, then only the red color data is used to determine whether particles are generated. If more then one button is active, the average of the chosen channels is used.
Sub-Mtl ID
Specifies the sub-material ID when Emission By (see preceding) is set to Sub-Material or Sub-Material Global. Typically the sub-material is a component of a Multi/Sub-Object material, and you can find the IDs on the material’s Basic Parameters rollout.
Whiteness %
Sets the color trigger level. If a color at a particle seed location exceeds this threshold, then a particle is generated. A 0% Whiteness corresponds to RGB value (0,0,0), while a 100% Whiteness corresponds to the RGB value (255,255,255).
Emitter Objects group

Use these controls to assign objects to be used as particle emitters.

Add
Adds an object to the list.
By List
Opens the Select Emitter Geometry dialog where you can add multiple objects to the list.
Remove
Removes a highlighted object from the list.
Animated Emitters
Indicates that the emitter objects are animated, either with transforms or surface animation. This option affects the display of particle seeds, but doesn’t affect particle generation, because all particles are generated on the surface regardless of whether it is animated. Toggling this option does not affect calculation status.
Surface Normal Offset
When on, lets you specify an offset range from the emitter surface for particle placement. Negative values place particle seeds below the surface.
Offset Min/Max
When Surface Normal Offset is on, you can specify the range of offset distance from the object surface. The Min value cannot exceed the Max value, and the Max value cannot go below the Min value.
Scale Factor group

The operator can initialize particle scaling according to the characteristics of the texture the particles are generated from. So, for example, you can vary the sizes of particles emitted from different parts of the surface with a gradient map. The scale value calculation uses the texture's state at the current frame, disregarding any animation the texture has. Since a color has three floating-point values, each value defines a different component of the scale vector. To have a uniform scale factor, use textures with no hue (black/gray/white gradients).

Scale By
Defines the source of color to calculate particle scaling. The available choices are:
  • None No particle scaling is set.
  • Sub-Material Uses a single sub-material to set the scale, and uses this scale over the entire emitter surface regardless of the faces' Material IDs. The sub-material ID is set by the Sub-Mtl ID parameter.
  • Vertex Color Uses the Vertex Color channel to define particle scale.
  • Vertex Alpha Uses the Vertex Alpha channel to define particle scale.
  • Vertex Illum Uses the Vertex Illum channel to define particle scale.
  • Mapping Defines particle scale with a mapping channel that is used for vertex coloring by the Vertex Paint modifier. The mapping channel index is defined by the Channel parameter.
Tip: For information about these channels, see the VertexPaint Modifier topic in the 3ds Max Help.
Sub-Mtl ID
When Scale By (see preceding) is set to Sub-Material, specifies the sub-material ID. Typically the sub-material is a component of a Multi/Sub-Object material, and you can find the IDs on the material’s Basic Parameters rollout.
Black Scale %
Defines the scale value for particles that fall on pure black areas of the texture. This value should be used to set the scale percentage for the smallest particles in the range. The Black Scale % must be lower than or equal to the White Scale %.
White Scale %
Defines the scale value for particles that fall on pure white areas of the texture. For intermediate gray colors, the scale value is linearly interpolated between the Black Scale % and White Scale %.

The Black Scale % and White Scale % can influence the particle distribution if the Separate option in the Quantity group is chosen, and Adjust By Scale Factor is on.

Display group

The operator is able to show the particles in interactive, non-history-dependent mode. Usually, if you want to see particle animation, you have to place the operator into an event that is wired to an active PF Source event. However, this might require heavy calculation for history-dependent particle animation. The parameters in the Display group give you the ability to see how particles will be created without the overhead of generating a particle system.

Show Particles
Displays calculated particle seeds as ticks.
All / By Timing
Defines the mode for showing particles:
  • All All pre-calculated particles are shown.
  • By Timing Each particle is displayed at the frame at which it will be born. The timing shown with the By Timing method might differ from the actual particle emission because the Emit Start and Emit Stop values in the Birth Texture operator can adjust the overall particle timing.
Only When Selected
When on, particle seeds appear in the viewports only when the Birth Texture icon is selected. When off, particle seeds always appear.
Icon Size
Sets the size of the 3D icon of the operator. The size of the icon has no effect on particle size or emission.
Color Coordinated
When on, the color of the 3D icon is synchronized with the color set by the Display operator in the same event as the corresponding Birth Texture operator. When off, the icon uses the standard Particle Flow operator color: blue.
Uniqueness group

The Uniqueness settings enable you to change the randomization of the particle generation where appropriate.

Seed
Specifies a randomization value.
New
Calculates a new seed using a randomization formula.