Distribution Sources

Introduction

Stoke MX creates particles either by using other particles as “seeds”, or by producing random seeds procedurally on the surface or in the volume of a mesh object.

Distribution From Meshes

Stoke MX can create particles from a mesh using one of the following distribution modes:

Mesh Surface

  • This is similar to the Position Object > Surface mode of Particle Flow.
  • An arbitrary number of seed points can be generated randomly on the surface, assuming there is at least one polygon in the mesh.
  • The random distribution will be affected by the Random Seed parameter.
  • The Surface Distribution is enabled by selecting a mesh object and specifying “Surface” in the first drop-down list.
  • The second drop-down list provides three distribution sub-options:
    • All Faces - random points will be seeded accross all faces of the mesh.
    • Face Selection - random points will be seeded only on selected faces. Note that the Face Selection at the emission point could be acquired while in All Faces mode and the particles could be deleted “in post” using a Krakatoa Magma modifier and a Krakatoa Delete modifier for added flexibility!
    • Vertex Soft Sel. - random points will be seeded according to the vertex soft selection at the corners of each face, producing higher density where the selection value is higher, and no particles at all where the selection is 0.0. If no Vertex Selection is set in the mesh, all vertices will be considered fully selected.
  • When emitting from the surface, all mesh channels accessible in the mesh including Mapping Coordinates, Face Normal and Tangent, Face Area, Selection and Material ID will be accessible to the newly created particle and can be enabled for acquisition. The channel data will be acquired only at birth time and will persist throughout the life of the particle.

Mesh Volume

  • This is similar to the Position Object > Volume mode of Particle Flow, but is implemented using the same approach as in Krakatoa PRT Volume, resulting in a much faster seeding performance and much better handling of complex volumes.
  • An arbitrary number of seed points can be generated randomly inside the volume of the mesh. It is desirable that the mesh is more or less closed, but open volumes are also supported to a certain extent.
  • The random distribution will be affected by the Random Seed parameter.
  • The Volume Distribution is enabled by selecting a mesh object and specifying “Volume” in the first drop-down list. The second drop-down list has only one mode, “All”.
  • The Volume Spacing parameter defines the Voxel Size of the Grid used to convert the mesh to a Level Set. This is similar to the Spacing parameters in the Krakatoa PRT Volume and will be set automatically to an adequate value based on the bounding box of the mesh when when it is picked.
  • Note that the Volume Spacing is stored per object, but it is not animatable over time.
  • When acquiring channels from the mesh, the data will be taken from the closest point on the surface of the mesh.

Vertices

  • This is similar to the Position Object > Vertices mode of Particle Flow.
  • One or more particles will be emitted randomly only from vertix points on the mesh.
  • The Random Seed parameter will affect which random vertices will be picked when emitting less particles per frame than there are vertices in the mesh.
  • When more particles have to be emitted than there are vertices, each vertex can emit more than one particle. In this case, the Jitter Radius can be useful to randomize the initial position of each new particle.
  • The Jitter Radius defines a random spherical offset around the vertex.
  • If Jitter Radius is set to 0.0, the emission will occur exactly at the vertex.
  • The Vertices Distribution is enabled by selecting a mesh object and specifying “Vertices” in the first drop-down list.
  • The second drop-down list provides two distribution sub-options: * All - random points will be seeded from all vertices of the mesh. * Vertex Soft Sel. - random points will be seeded according to the vertex soft selection at the corners of each face, producing higher density where the selection value is higher, and no particles at all where the selection is 0.0. If no Vertex Selection is set in the mesh, all vertices will be considered fully selected.

Edges

  • This is similar to the Position Object > Edges mode of Particle Flow.

  • One or more particles will be emitted randomly along the edges of the mesh.

  • The Random Seed parameter will affect the random distribution along the edge.

  • The Edge Distribution is enabled by selecting a mesh object and specifying “Edges” in the first drop-down list.

  • The second drop-down list provides three distribution sub-options:

    • All** - random points will be seeded from all vertices of the mesh.
    • Vertex Soft Sel.** - random points will be seeded according to the vertex soft selection at the ends of each edge, producing higher density where the selection value is higher, and no particles at all where the selection is 0.0. If no Vertex Selection is set in the mesh, all vertices will be considered fully selected and thus all edges will emit particles.
    • Edge Selection - random points will be seeded from the selected edges. If no edge selection is provided by the mesh, all edges will be considered selected and will emit particles.

Distribution From Krakatoa PRT Objects

Stoke MX can emit particles using the particles of a Krakatoa PRT Object as explicit seeding points.

  • When the number of particles to be emitted is lower than the number of seeds, the seeding points will be selected randomly.
  • When the number of particles to be emitted is higher than the number of seeds, some seeds might emit more than one particle. While the advection timing of each particle will be randomized to avoid clumping, the Jitter Radius can also be used to randomize each new particle’s position in a spherical region around the seed.
  • It is also possible to emit exactly as many particles as there are seeds in the Krakatoa PRT Object - simply check the “Use Seed Count As Rate” checkbox.
  • If the source is a PRT Loader and the particle stream contains a valid ID channel, only new-born seed particles will create new Stoke particles. This lets you match exactly the birth of an existing particle sequence read from disk.
  • All particle channels available in the distribution object will be available for optional acquisition by the newly created particles. Combined with the ability to match the particle count of an existing sequence, this allows the DUPLICATION of a PRT file sequence as a dynamic, simulatable system.
  • All Krakatoa PRT Objects are supported, including PRT Loader, PRT Volume, PRT Maker, PRT FumeFX, PRT Surface, PRT Hair, PRT Source, PRT Ember and even other Stoke objects which are technically also a PRT type object.
  • The source PRT objects can be freely modified using Magma, Delete and Deformation modifiers as needed before being used to provide seeds for Stoke MX particles.

Distribution From 3ds Max Particle Systems

Stoke MX can emit particles using the particles of all 3ds Max particle systems as explicit seeding points.

  • Supported systems include Legacy 3ds Max Particles, Particle Flow and Thinking Particles.
  • All features outlined in the previous paragraph about Krakatoa PRT Objects also apply to the distribution from 3ds Max particles.