Speed operator

The Speed operator allows you to assign velocities to particles. Velocity vectors are constructed by multiplying a direction vector by a magnitude.


Operation

  • Set velocity: changes particle velocity to the value created by the Speed operator.

  • Add to velocity: adds the value created by the Speed operator to the existing particle velocity value.

Magnitude

  • Velocity magnitude type: the method used to define the desired magnitude of the resulting velocity value.

By Value: the magnitude will be set to an absolute value.

Inherit Previous: the magnitude will be set to the particle’s current velocity magnitude.

Get From Parent: the magnitude be set to magnitude of the particle’s parent particle velocity, if it has a valid parent.

From Last Pos (Verlet): the magnitude will be the distance between the particle’s current position and its position at the previous time step.

  • Magnitude: the absolute magnitude value.

  • Variation %: the per-particle percentage of variation to apply.
  • Relative to mass: controls whether magnitude values will be relative to a particle’s mass.

  • Simulate substeps: forces will be interpolated in a way that simulates the addition of forces at smaller simulation substeps.

Direction

  • Velocity direction vector type: the method used to define the desired direction vector of the resulting velocity value.

Along Icon Arrow: the direction vector will be aligned to the nearest tyIcon object’s arrow.

Icon Center Out: the direction vector will be aligned to a vector pointing outward from the center of the nearest tyIcon object.

Icon Axis Out: the direction vector will be aligned to a vector pointing outward from the central axis of the nearest tyIcon object.

Random 3D: the direction vector will be a random 3D vector.

Random Horizontal: the direction vector will be a random 3D vector around the world’s Z-Axis.

Inherit Previous: the direction vector will be set to the particle’s current velocity direction vector.

Particle X/Y/Z: the direction vector will be set to a local axis of the particle’s orientation.

Get From Parent: the direction vector will be set to direction vector of the particle’s parent particle velocity vector, if it has a valid parent.

Outwards From Custom Vector: the direction vector will be set to direction from the specified custom vector channel value to the particle.

Outwards From Parent: the direction vector will be set to direction from the parent particle to the particle, if it has a valid parent.

From Last Pos (Verlet): the direction vector will be set to the direction between the particle’s current position and its position at the previous time step.

Discretize: the direction vector will be set to a discretized vector derived from the particle’s current direction vector.

Absolute: the direction vector will be set to the dominant axis of the particle’s current direction vector.

  • Reverse: reverses the resulting direction vector.

  • Angle step: the maximum angle that a discretized vector may deviate from a world-aligned axis.

  • Divergence: the degrees of random divergence to apply to the resulting direction vector.

  • Divergence damping: This value controls how much divergence damping to apply to resulting speed vectors.

Divergence damping is the tendency for the magnitude of a speed vector to approach zero, as it diverges from its original direction. Increasing this value will slow particles down, depending on how much their direction vector diverges.

  • Damping exponent: The dot product used to calculate the divergence damping value will be raised to this exponent. Increasing this value will increase damping for smaller divergences.

Noise

Applies a turbulent noise multiplier to velocity values, based on particle positions in space.

  • Noise mode: controls which noise algorithm will be used.

  • Noise texmap: the texmap that will be used by the noise texmap mode(s).

  • Noise preview: a preview image showing a 2D representation of the selected noise mode.

  • Strength: the strength of the noise (a multiplier on the default noise range of [-1, 1]).

  • Frequency: the speed at which the noise will evolve over time.

  • Scale: the scale multiplier for position values sent through the noise algorithm. Smaller values create larger noise patterns.

  • Roughness: controls the amount of extra detail applicable noise modes will generate.

  • Lacunarity: controls the scale of successive noise octaves for applicable noise modes.

  • Gain: controls the relative intensity of successive noise octaves for applicable noise modes.

  • Iterations/Octaves: controls the number of overlapping noise patterns that applicable noise modes will generate.

  • Phase: provides manual control over the evolution of the noise over time.

Interpolation

  • Normal interpolation: linearly interpolates the current value towards the target value.

  • Full interpolation on entry: linearly interpolates the particle's current value towards the target value, unless the particle's event age is 0 - then the particle's current value will be set to the target value.

  • Full interpolation at time of birth: linearly interpolates the particle's current value towards the target value, unless the particle's age is 0 - then the particle's current value will be set to the target value.

  • Curve interpolation (static): uses a curve to interpolate the particle's current value towards the value assigned to the particle when the particle first entered the event.

  • Curve interpolation (dynamic): uses a curve to interpolate the particle's current value towards the target value.

  • Duration: the number of frames over which the curve interpolation will be performed.

  • Value: the amount to linearly interpolate values each frame.

  • Variation %: the amount of variation to apply to the interpolation value.

Icons

  • tyIcon object list: the list of tyIcon objects to use for various values calculations. Only the closest object to each particle will be used.

Uniqueness

  • Seed: the seed value for all varied parameters.

  • Seed by time: the seed value will be incremented with the current time in ticks.