tyParticleSkin Modifier

The tyParticleSkin modifier can be used to deform a regular mesh with a tyFlow particle system.


Particle Skin

  • Node: the tyFlow object whose particles will be used to skin the mesh.
Mode
  • Vertices: the mesh will search for nearest particles within the flow from the location of its vertices.

  • Faces: the mesh will search for nearest particles within the flow from the location of its face centers.

  • PhysX tearing solver: each individual vertex will be weighted to the nearest input particles. The PhysX-bind hierarchy of weighted particles will then be examined, and if breaks are detected over time, weightings will be adjusted to account for lost connections between affecting particles. The adjusted weightings manifest as gaps between previously-adjacent faces (ie, tears in the mesh). This effectively allows you to use tyParticleSkin as a history-independent tearing solver for rigid body simulations.

The PhysX tearing solver solver only works when the all mesh faces are detached into individual elements. The tyParticleSkin modifier will perform the detach operation if it detects that the total number of mesh vertices is not equal to the total number of mesh faces multiplied by three (ie, the only valid ratio of faces-to-verts allowed for this mode), however, the modifier will perform faster if a tyFaceFracture modifier is placed below it, which does the proper detaching instead. In that configuration, the tyFaceFracture modifier (when operating on a static mesh) will only need to evaluate once, as opposed to the detach operation evaluating every frame when performed in the tyParticleSkin modifier.

Due to the requirement for detached faces by the PhysX tearing solver, when using that mode it is recommended to add a tyWeld modifier above the tyParticleSkin modifier in the modifier stack, so that detached faces are re-attached after the skinning operation is performed. This will have a performance cost but will keep resulting surfaces smooth instead of faceted.

If particles have a shape mesh, the vertices of the shape mesh will be considered during the nearest particle search, for improved accuracy.

  • Ref frame: the reference frame to use as the initialization time for the skin.

  • Max distance: the maximum distance that a particle can be from a mesh vertex/face in order to influence it.

  • Max count: the maximum number of particles that can influence a mesh vertex.

  • Use particle mesh verts: controls whether nearest-particle distances will be calculated to particle mesh vertices, instead of just particle positions.

  • Subdivide: controls whether randomly-placed implicit vertices will be added to the surface of applicable particle meshes, which can help to increase the accuracy of weight calculations.

  • Weight all vertices: if no particles are within the maximum distance to a mesh vertex/face, the nearest particle (regardless of distance) will be used. This ensures all vertices are weighted to at least one particle, assuming at least one particle exists.

During initialization, influencing particles will be weighted based on their relative and normalized distance to the target vertex. If a vertex is influenced by multiple particles, the weights for each particle will be determined by their distances to the vertex, with closer particles having a higher weight than further particles.

  • Re-initialize: re-initializes the skin.

Simulation Groups

  • Simulation groups: controls which particle simulation groups will be imported.

Export Groups

  • Export groups: controls which particle export groups will be imported.

PhysX Tearing

  • Connectivity: the maximum hierarchy depth to search for a PhysX bind connection between two particles which both influence a single vertex. Of a connection cannot be found within this depth, the particles are considered broken apart.

  • Tear time: the time, in frames, vertices will interpolate between bound and broken states after particle binding is found to be broken. The greater the value, the slower/smoother each new tear will form.

  • Auto re-weld: re-welds faces extracted by the tyParticleSkin modifier when in “PhysX tearing solver” mode. If this option is disabled, none of the mesh’s individual faces will remain connected (the PhysX tearing solver requires faces to be separated prior to calculating tears).