Version History

Example Scenes 007 (May 11 2019)

  • updated tyFlow_bindParticleToParticle_001.max to comply with updates to PhysX group collision rules
  • electricity arc scene added
  • voronoi fracture using particle source scene added

tyFlow v0.16022 (May 11 2019)


  • Added per-axis affect controls to force operator

Bug fixes:

  • fixed a bug (which showed up as a regression in v0.16021) where Voronoi operator would crash when added to a flow
  • fixed group logic issue affecting PhysX rigidbodies (previously, rigidbodies with a group would collide with those with no group, but not vice versa). Now, any PhysX rigidbody with no groups will not collide with PhysX rigidbodies that have groups set, and vice versa. If you set simulation groups on particles and wish to have them collide with the default PhysX ground plane, please ensure those groups are also applied to the ground plane in the main tyFlow PhysX settings.
  • fixed a bug where certain shapes would appear incorrect in the viewport or render, if they had a custom matID override set

tyFlow v0.16021 (May 10 2019)

Bug fixes:

  • fixed an issue where Particle Force would crash if no particle groups were assigned in the flow
  • fixed an issue where a voronoi cloud point at the origin (0,0,0) would be created when using a source flow as the cloud source
  • fixed an issue where the Material ID operator would crash if set to get IDs from a surface with zero faces
  • fixed an issue that could cause scenes containing tyCaches to crash on reset
  • fixed a bug where the “$(tyFlowLayer)” layer keyword was not working in the tyCache exporter layer selector
  • fixed a bug where Scale operator “relative add” mode was not working when time steps were smaller than 1 frame

tyFlow v0.16020 (May 9 2019)


  • you can now change the display wirecolor of tyFlow object icons
  • listbox […] menus now have hide/unhide options
  • Spin operator now has interpolation setting
  • Particle Force can now use the flow’s own particles
  • Export Particles will now respect tyFlow retimer settings (an additional option has been added to ignore retimer settings)
  • added the ability to query the particles of any event in the flow, by event name, in the Script operator (see API for “GetEventParticles(name)” function)

Bug fixes:

  • fixed a bug where Voronoi Fracture points derived from an external flow were positioned using the wrong coordinate system (therefore offset from target particles).
  • fixed a bug where Rotation operator interpolation variation was not being computed correctly
  • fixed an issue where small simulation time steps could cause the PhysX sleep settings to activate prematurely
  • fixed an issue where tyCache would keep evaluating forever if retiming (by speed) was enabled on the flow
  • fixed a bug where Particle Force was not resetting properly, resulting in incorrect behavior upon resimulation
  • fixed a bug where the Rasterize operator “Delete if overlapping” option was not working properly

tyFlow 0.16019 (May 7 2019)


  • spline paths objects can filter neighbors by simulation group
  • added layer selection for tyCache node in tyCache (Export Particles) settings
  • added materialID test to Surface Test operator
  • added option in tySplines object to delete particle trajectory as soon as particle is deleted
  • added Property Test test for actor bone particles
  • Particle Switch operator can be used to activate/de-activate wobble solver for affected particles
  • Scale/Rotation/Custom Properties/etc operator interpolation settings are now time step independent
  • “Seed by time” option added to Speed/Voronoi operators, for allowing per-particle randomization to change each time step
  • Voronoi Fracture operator point cloud can be created from the particles of a source flow, allowing for fine-tuned control of fracture locations
  • added ability to set particle pivot to source fracture point in Voronoi Fracture operator

Bug fixes:

  • fixed an issue where PhysX rigidbodies were not falling asleep even when satisfying the sleep velocity/duration thresholds (resulting in a lot of extra jittering)
  • fixed an issue with built-in turbulence force not generating x-axis values correctly
  • fixed a bug where values >100 had no effect in the Scale Operator for scale by texture mode.
  • fixed a bug in the Shape operator where selecting a member of a closed group would not select the whole group, but instead, just that member
  • fixed a bug where enabling particle age cache would display improper age data (-1)
  • fixed an issue where “Face (accurate)” sampling mode was not working in Find Target operator
  • fixed a bug where exported objects would not have matID/mapping overrides assigned within the flow
  • fixed a bug where tyFlow would not respect global VRay material overrides
  • fixed a crash that could happen if a PhysX Bind operator was added to an event that was not an active event
  • fixed a bug where Rotation operator divergence settings weren’t working properly for certain rotation modes
  • fixed a crash that would occur when loading a flow that contains baseline operators
  • fixed an issue where deleting certain operators would refresh the simulation, even if they weren’t in an active event
  • fixed an issue where VRay Proxy input objects would use their viewport-display mesh, instead of their internal highres mesh in a flow
  • fixed a potential crash that could occur while calculating input object vertex normals
  • fixed some issues with VRayVelocity render elements (empty when motion blur disabled, improper vectors when enabled)

tyFlow 0.16018 (May 2 2019)


  • added support for VRay 3.7 in tyFlow for 3ds Max 2020
  • added X/Y/Z affect controls for Scale operator texmap multiplier
  • An option has been added to the Particle Switch operator to force particles awake for a minimum duration after activation, to prevent them from falling asleep again too soon.
  • asleep/awake display added to Display Data operator
  • added a simulation group match type dropdown to replace the radiobuttons for certain operators, that allows you to filter matching particles by the group of the source particle rather than by groups specified by the group checkboxes in the UI. This allows for much easier particle filtering in many cases.

Bug fixes:

  • fixed a regression where 3dsmax would crash on startup if the system paths PATHS variable was too long
  • fixed a regression where tyFlow would fail to load certain reference targets, resulting in listboxes displaying for nodes that previously loaded fine
  • fixed a regression where certain scenes involving tyActors would crash
  • fixed a crash that would occur when applying a procedural map as a custom sprite bitmap

tyFlow 0.16017 (May 1 2019)


  • a tyParticleObjetExt interface was created for tyFlow, for accessing tyFlow custom data channels through the IParticleObjectExt interface. 3rd party SDK developers who wish to access tyFlow custom data can request the header for inclusion in their projects.
  • Limiter position mode has ‘affect velocity’ control
  • Spawn operator has new option to align child particles to the surface of their parent

Bug fixes:

  • fixed a .NET DLL error that would popup on certain machines when loading tyFlow
  • fixed a Display Data operator bug where particle age was never retrieved properly
  • fixed a bug where texmaps would not query the proper W-coordinate when “use offset as W” was disabled
  • fixed a bug that caused a crash when copying + pasting certain operators to a different flow
  • fixed a bug where tyCache retimer settings couldn’t be switched from frame to speed
  • fixed a bug where tyCaches were not properly loading frames if their particle interface was referenced by a separate plugin first
  • fixed a bug that was causing certain tyActor setups to cause tyFlow to endless reset the simulation over and over
  • fixed a bug where a threading race condition would cause cloth meshes to flicker on and off in the viewport

tyFlow 0.16016 (April 28 2019)


  • Script operator can now sample texmap color values
  • Baseline operator has options to exclude display/mesh/etc operators
  • Collision operator has pass-through option for controlled particle leaking
  • a tyCollection helper object has been added. You can add multiple objects to it, then add it anywhere in a flow and it will pass all of its objects into the flow. It makes multi-object management much easier.
  • preliminary support for Alembic export added. Particles can be exported as Alembic point clouds. Mesh export is still on the todo list.

Bug fixes:

  • fixed issue with particle birth/death scale up/down in tyCache which was causing particles with a lifespan of 1 frame to be removed instantly after birth
  • fixed an issue introduced in v0.16015 where tyCaches were not rendering when VRay motion blur is enabled
  • fixed a bug where tyCaches weren’t properly displaying mapping overrides even if “ignore UVW overrides” was disabled
  • fixed an issue where tySplines object properties were not displaying properly in the track view
  • fixed an issue causing tyFlow to immediately crash when created on machines with CPUs that do not support SSE4 instruction sets
  • fixed a crash when doing a ‘surface area’ property test

tyFlow 0.16015 (April 25 2019)


  • you can now select which GPU will be used for OpenCL acceleration within the Particle Bind Solver settings
  • MXS: $[…].editor_open() method added (use maxscript to open the editor of a tyFlow object)
  • you can now use the arrow keys on your keyboard to align selected events in the editor
  • particles scattered on spawn parent meshes are now scattered uniformly
  • you can now spawn particles on the faces of parent particle meshes with specific matID values
  • Rotation operator surface align can now use particle velocity as the forward vector, for better contouring of surfaces when particles are moving, as well as using the particle’s own TM forward vector
  • Position Raycast operator now has a timing rollout, and some additional settings
  • improved tyCache loader performance outside of clamp range when frame clamping enabled
  • Property Test operator can now test event/flow particle counts

Bug fixes:

  • fixed a problem where the editor wouldn’t redraw properly after window maximization
  • fixed a bug where a file would crash while loading a Material operator
  • fixed a bug where the RGB channel name textbox of the Fluid Properties operator wasn’t working
  • fixed a bug where negative frame time values were causing the Force operator’s built-in turbulent noise to return incorrect values
  • tyCache will no longer save unnecessary frames in RAM during network rendering
  • fixed a crash in the Rotation operator when a helper icon is added to the object list in ‘surface align’ mode.
  • fixed a Shell operator crash when “open edges only” is enabled.

tyFlow 0.16014 (April 21 2019)


  • tyActor bones will no longer export into tyCaches by default. An optional checkbox has been added to the Export Particles settings to override this new behavior
  • the resample operator can now properly resample closed loops of sibling particles (ie, particles generated on the surfaces of closed splines)
  • Particle Bind and PhysX Bind operators now have color pickers to define colors for their bindings
  • default PhysX gravity value is animatable
  • Particle Switch operator can be used to put particles to sleep
  • improved particle sleeping behavior, particles no longer auto-wake on static colliders

Bug fixes:

  • reduced UI flickering
  • fixed an issue where Birth Burst values were not being saved properly
  • fixed an issue where spawn by travel was causing particle trails to start from [0,0,0] in some situations
  • fixed a bug where the simulation would reset each frame when rendering with VRay NEXT GPU
  • fixed a bug where VRayVelocity render element was returning no data on rendered tyFlow meshes
  • fixed a VRay instancing bug where geometry would appeare where it shouldn’t, disappear or render with the wrong shape mesh, etc. General visual glitches.
  • fixed a bug where Force operators were not importing custom vector source data properly
  • optimized tyParticleSkin modifier so that highres meshes don’t freeze max when search radius is very large
  • fixed a bug where Fuse operator always acted like its timing was set to “Continuous”
  • improved display performance (a bug was causing display slowdowns when using Particle Bind operators)
  • Bind solver mass z-bias now properly compensates for large particle masses.

Example Scenes 006 (April 21 2019)

  • dynamic cloth flag scene added
  • arrow attack on dynamic crowd scene added
  • discretize particle velocities scene added
  • sand castle destruction scene added
  • PhysX rolling follow scene added
  • upres simulation scene added
  • resample spline scene added

tyFlow 0.16013 (April 17 2019)

Bug fixes:

  • rebuilt with latest PhoenixFD libraries
  • fixed a bug that was causing full flow corruption when outputting particles from a Voronoi Fracture operator (resulted in intermittent particle disappearances)
  • fixed a bug that was preventing PhysX shapes from inheriting proper particle velocities and forces when simulation timestep is less than 1
  • fixed a bug where tyFlow would crash if “print calculation times” was enabled in the tyCarve modifier
  • fixed a bug that would cause Actor Collect to crash when it doesn’t have an output operator.
  • fixed a bug where resample operator was not properly integrating affected particle velocities
  • tyFlow should now appear in proper ‘standard primitives’ location in non-english versions of 3dsmax

tyFlow 0.16012 (April 16 2019)


  • added export layer selector for Export Particles operator object mode
  • added checkbox in Display operator to disable material display on geometry
  • PhoenixFD source can now be set to use tyFlow/tyCache particle shapes as input meshes when tyFlow particle interface is enabled

Bug fixes:

  • fixed an issue where bump mapping was not rendering when vray interface is enabled
  • fixed an issue where cloth meshes would have incorrect vertex locations in some circumstances if tearing is enabled.
  • fixed crash when duplicating a tySplines object

tyFlow 0.16011 (April 14 2019)


  • experimental 2016 build added
  • tyParticleSkin initialization phase is now multithreaded
  • operator timing parameters are now keyable
  • listboxes will display horizontal scrollbar for long node names
  • you can now assign verlet velocity to vector channel in Custom Properties operator
  • Custom Properties operator can reset particle age
  • Custom Properties TM channel can now save/load orientations
  • Position Object/Scale/Surface Test/etc texmap option now supports deriving the map directly from the target object’s material
  • renamed “Material” operator “Instance Material” operator, to help avoid confusion
  • Growth operator can output born particles
  • additional logging added to try and track startup crashes/errors (contact for more info)
  • added variation spinners to Flock operator for per-particle variation of parameters.
  • tyCache will now export all particles, even ones that do not have an assigned shape
  • added a timeScale setting to tyFlow objects, to allow the scaling of simulation time during the resimulation (as opposed to the retimer which scales time afterwards)
  • the ‘particle to object’ exporter will now apply materials to exported meshes, including materials assigned to particles with an Instance Material operator.
  • Display operator can now filter by simulation groups
  • Property Test operator can now test particle surface area
  • Display Data operator can now display particle surface area
  • Fluid Properties operator can now read fluid RGB values
  • added a Cloth Collect operator for collecting particles of the same cloth mesh together that had been previously separated into other multiple events.

Bug fixes:

  • fixed a bug where VRay NEXT would render tyFlow geometry black if render elements were present
  • fixed a bug where VRay IPR would crash (the fix is a workaround: instancing is now automatically disabled when in IPR mode)
  • fixed bug where max could hang during save in certain circumstances during a save when the flow is retimed
  • fixed a bug where tyCache retime-by-speed spinners not working
  • fixed bug where tyParticleSkin wouldn’t initialize properly if reference flow birth frame wasn’t 0
  • fixed a bug where the operator depot wouldn’t stay resized if high DPI window scaling is turned on
  • fixed a bug where Export Particles would unnecessarily reset the simulation after export in some circumstances
  • fixed bug where Display operator export groups where not working
  • fixed bug where pressing ‘…’ menu button in Script operator would cause a crash
  • fixed bug where changing time units could crash a cloth sim if tearing is enabled
  • fixed an issue with PhysX velocity integration causing resulting values to display incorrectly
  • fixed crash that could occur during simulation reset when using PhysX bindings
  • fixed rogue materials sending incorrect reset notifications to “Instance Material” operator
  • fixed a bug where deforming meshes were not colliding with particles properly
  • fixed a crash when setting particle groups in the Particle Physics operator, when in non-integrated mode
  • fixed an issue where the presence of a PhysX shape operator would always override particle mass even if override mass was disabled
  • fixed issue with Spread operator where the noise function is not properly reseeded each frame
  • fixed a bug where Script operator custom property names were treated as case-insensitive
  • fixed a bug where Rotation operator object alignment would give improper rotations if the target objects’ scale was skewed
  • fixed a bug where having a mapping override on cloth vertices would scramble cloth mesh in some circumstances
  • fixed a bug where the tyParticleSkin modifier wasn’t working with the tyFlow retimer
  • fixed a bug where a Collider that sends a particle to another event containing a Collider could kill particle velocities if a collision occurs in the first collider
  • fixed a bug that was causing actor rig parts to playback with their animated transforms out of sync
  • fixed a bug where the reseed function wouldn’t affect all operators
  • fixed a crash that can occur when instantiating certain tyFlow helpers (tySpline, tyIcon, etc)
  • fixed a crash that occurs if you add a tySlider to a Particle Break operator without enabling tearing on a prior Cloth Bind operator
  • fixed a bug that would cause the Particle Bind solver to skip some collisions when OpenCL acceleration was off
  • fixed a bug that would cause the Path Follow operator to crash if one of the input splines was deleted
  • fixed a bug where particles moving over an Object Bind surface with ‘scale’ bind enabled would random change scale at different frames

Example Scenes 005 (April 14 2019)

  • all scenes updated to be compatible with 3ds max 2016

Example Scenes 004 (April 7 2019)

  • actor balloon example added
  • occlusion vine growth example added
  • simulation retimer example added
  • wobble operator example added
  • deforming fracture example added

tyFlow 0.16010 (April 7 2019)

  • fixed particle matIDs not shown properly by Display operator in “Geometry” mode
  • Rotation operator in “surface align” mode now supports input splines. Particles will be aligned to the tangent vectors of the input shape.
  • tyFlow/tyCache retimer now supports retiming by speed %
  • occlusion testing added to Surface Test operator
  • you can now copy operators by holding shift while dragging them, and instance operators with shift+alt+drag
  • Speed operator magnitude/direction can be derived from parent particle
  • Speed operator direction can be derived from outward vector to parent particle
  • Spawn operator parent shape spawn offset controls added
  • “Remove All” button near listboxes replaced with more detailed option menu
  • global helper functions added to Script operator, for static math functions of Quat/Matrix3/Point3 libraries

tyFlow 0.16009 (April 6 2019)

  • fixed bug where non-english windows/keyboard setup prevented scripts from running, QuickType from displaying, etc.
  • fixed a bug where certain renderers (Scanline, possibly others) wouldn’t render sequneces of frames
  • fixed subdiv/relax operators clearing out mesh matIDs
  • fixed another bug that would cause VRay IPR to crash when moving the timeslider
  • fixed an issue where undoing a make-unique operation would unlink grouped spinners
  • added reseed options in right-click menu for selected operators. Global reseed option also added to utilities right click menu

Example Scenes 003 (April 5 2019)

  • actor crowd example scene added
  • scripting example added
  • parent/child PhysX example added
  • particle UVW gradient example added

tyFlow 0.16008 (April 5 2019)

  • VRay 3.6 supported in tyFlow 2017/2018/2019. VRay NEXT supported in tyFlow 2017/2018/2019/2020
  • particles can override cloth UVs
  • fixed improper face distribution when spawn particles set to ““parent shape surface””
  • fixed bug where Birth Surface operator would crash if target object had no selection and mode was set to “selected vertices/faces”.
  • “Particle Age” added to animation offset keying for Scale operator
  • Scale operator’s “uniform” checkbox now works when in velocity mode
  • fixed a bug where colliders in continuous interaction mode would still stop particles if their thickness was greater than 0
  • fixed a bug where particles exported to objects at frame 1 don’t get a proper transform keyframe at frame 0
  • fixed a bug where resizing the tyFlow window would reset changes made to the height of the operator depot
  • fixed error with mapping operator modifying incorrect mapping channels

tyFlow 0.16007 (April 4 2019)

  • fixed certain renderers crashing during flow initialization
  • fixed Physx Break operator crash
  • fixed freeze when running VRay mesh exporter on a tyFlow
  • script editor log box scales properly on high DPI screens
  • fixed crash when switching to Corona IPR
  • fixed freeze when updating Corona IPR
  • fixed bounding box bug on deforming meshes preventing update in Birth Voxels operator
  • fixed motion blur artifacts when rendering tyCache with VRay
  • fixed issue with tyCache where it would render as mesh instead of instances
  • fixed tyCache incorrectly reporting that VRay 3.6 is missing on 2017/2018/2019
  • fixed a bug where certain scenes cannot be reset/closed
  • fixed crash that occurred when converting certain meshes into PhysX meshes

tyFlow 0.16005 (Aprl 2 2019)

  • fixed crash when disabling skin modifier on tyActor mesh

  • fixed crash when loading tyFlow on Windows 7

tyFlow 0.16003 (Apr 2 2019)

  • fixed high DPI (4K monitor) scaling issues

  • fixed crash when pressing ESC in QuickType menu

Example Scenes 002 (April 2 2019)

  • cloth self-collisions example added

tyFlow 0.16002 (Apr 1 2019)

  • fixed startup “missing module” error

tyFlow 0.16000 (Apr 1 2019)

  • initial public beta release