tySplines Object

The tySplines object takes input particles sent from a Spline Paths operator and converts them into native 3ds max splines.

You must select a tySplines object within a Spline Paths operator inside of an active flow in order to feed a tySplines object its data. A tySplines object contains a cache of data for fast playback, but does not save that cache to disk. Thus, its parent flow must always exist in the scene with it, in order for it to work.

Multiple operators within the same flow can send particles to the same tySplines object, but you should not send particles from multiple flow objects into the same tySplines object, or else the resulting splines will not display correctly.


Spline Paths

Display
  • Display splines in viewport: controls whether or not to generate splines in the viewport.

  • Show icon: controls whether or not to display the tySplines icon in the viewport.

  • Icon size: controls the size of the viewport icon.

Spline Path Settings
  • Linear/Smooth: controls the interpolation method used to generate spline.

  • World space: controls the coordinate system to generate splines in. Turning this off will generate splines whose position is relative to the position of the tySplines object in the world.

  • Show knots: controls whether or not to display each spline’s knots in the viewport.

Trahectory splines
  • Delete if particle deleted: trajectory splines whose originating particle is deleted will not generate the leftover trail that is within the trajectory/sibling max age limit.
Trajectory/sibling splines
  • Dist thresh: controls the minimum step size between points on a particle’s trajectory in order for them to form a spline segment.

  • Max dist: controls the maximum distance between two sibling particles in order for them to be conjoined with a spline segment.

  • Max age: controls the maximum age of particle trajectory points in order for them to be adding to a spline segment.

  • Time step: controls the minimum time step between particle positions in order for them to form a spline segment.

Neighbor splines
  • Max dist: controls the maximum distance between two particles in order for them to be conjoined with a spline segment.

  • Max neighbors: controls the maximum number of spline segments a particular particle can have, connecting it to its neighbors.

  • Sort by ID/distance: controls the method used to sort neighbors within the distance threshold for any particular particle, if the number of neighbors is larger than the value of “Max neighbors”.

  • Neighbor Simulation groups: controls which particle simulation groups will be considered for the neighbor collection.

Bindings
  • Weld bindings: controls whether or not to weld spline segments corresponding to connected bindings between particles together, end-to-end.

Post Processing

  • Weld knots: controls whether or not to weld resulting splines segments together, based on whether or not their endpoints are coincident.

  • Tolerance: the weld distance tolerance. Spline endpoints whose distance is below this value will be welded together.

  • Optimize splines by angle: controls whether spline knot counts will be reduced based on relative angles between spline segments.

  • Tolerance: the tolerance angle for performing knot reductions. Spline segments whose relative angle is less than this value will have their adjacent knot removed.

Retimer

  • Enable spline retimer: controls whether or not to enable spline animation retiming.

  • Frame: controls the current frame of the input particle data to display. Animating this spinner over time will control which frame of the input data to display over time, allowing input data playback to be retimed. If a subframe is chosen, generated splines will be properly interpolated, allowing for speedups and slowdowns during retimed playback.

Internal Cache

  • Clear Cache: clears the cached data contained within the tySpline object. The flow from which the data originated will need to be resimulated in order to refresh the data.

  • Only keep current frame: controls whether to keep data for past frames in memory, or only keep the current frame in memory. Turning this on will conserve RAM but will prevent playback of prior frames without refreshing the entire simulation. This setting is useful when rendering frames in a sequential manner on a machine with limited RAM.