A tyFlow object’s simulation reset mode can be assigned within the tyFlow editor’s right-click menu. The default mode is “auto”.
When “auto” reset mode is selected, any change to a tyFlow setting or any setting on an input object/texmap/etc of a simulation operator may trigger a simulation reset. This will result in any existing caches being cleared, and all frames of the simulation (up until the current frame of the timeline) being re-simulated. No user input is required to refresh the simulation in this case - it will happen as soon as the change is made to a simulation input.
When “manual” reset mode is selected, changes to a tyFlow setting or any setting on an input object/texmap/etc will not trigger a simulation reset and existing caches will not be cleared. If a critical setting is changed, the simulation will simply be frozen in its current state (the cache will be retained but no further frames will be computed), and if a non-critical setting is changed, further frames may be computed.
Because tyFlow was not originally designed with the “manual” reset mode in mind, the sweeping ramifications of being able to continue a simulation after changing arbitrary settings within it are difficult to predict in all cases. Thus, users are advised to proceed in “manual” mode with caution, since it is an experimental feature with potentially unforeseen instabilities that haven’t been ironed out yet.
Critical settings are those which require a full simulation reset in order to initialize correctly. When in “manual” reset mode, the tyFlow editor will report if a simulation setting was changed which requires the simulation to be refreshed in order to continue. While most simulation settings are not critical settings, some modifications to a simulation are not recoverable past the start frame of a simulation. An example of a scenario which would trigger a critical setting warning would be the addition of a new event into a simulation. Because events are collected, ordered and cached at the start of a simulation in a way that impacts many different aspects of the simulation framework, the addition or removal of an event from a simulation requires a full simulation refresh in order to continue.
When in “manual” reset mode, any changes to non-critical settings past the start frame of the simulation will generate this warning. This is because such changes will not be reflected in prior frames of the simulation (and will therefore lead to inconsistent results compared to the results of a fully-refreshed simulation). In order for all frames to reflect the change, the simulation must be refreshed.
As an illustration, imagine you set your simulation to “manual” reset mode and then simulate particles for 50 frames traveling at a speed of 1 unit per frame. At frame 50 they will have moved 50 units. Then at frame 50 you change their speed to 2 units per frame. Since the simulation is in “manual” reset mode, the unit change will not force a simulation reset and the simulation may continue. You then simulate another 50 frames, where the particles now travel another 100 units (at the new speed of 2 units per frame). Thus, at frame 100 they will have traveled a total of 150 units. However, this result would not be consistent with the result obtained after refreshing the simulation, since the new speed of 2 units per frame over the full 100 frames would cause the refreshed particles to travel a total of 200 units on the second run of the simulation, unlike the prior 150 units of the first run (in which the speed setting was changed halfway through).
Since that principle potentially applies to all non-critical settings when in “manual” reset mode, the tyFlow editor will print its generic warning reminding you to refresh the simulation any time it detects that a non-critical setting has changed.