âš ī¸Known Issues

Potential problems and how to solve them

Key Binding Conflicts in Unity 2021

There's a bug in Unity 2021's shortcut system that calls into conflict commands pertaining to different contexts. Therefore, it is a known issue that many of the Timeflow shortcuts will raise conflict warnings.

Timeflow scripts not supported in asset bundles or Udon

Timeflow cannot be used with 3rd party SDKs or systems which rely on asset bundles or only support a subset of C#, such as VRChat. This is a known and long-standing limitation. Scripts are not considered assets and cannot be distributed in downloadable app content for a number of reasons.

Editor windows may slow down runtime performance

When working in the Unity editor, the current display of the Timeflow view and the Inspector can cause degraded performance affecting the frame rate during playback if there are a lot of objects displayed or complex graphs. This is due to the overhead of UI drawing.

Assertion failed on expression: 'ShouldRunBehaviour()'

If this error occurs it typically means that a function is invoked on a script object that is not currently running. This only happens in the Unity Editor.

Stuttering, Jittering, or Shaking Movement

If you notice that animation isn't playing smoothly, this may be caused by a few things.

Skipping Playback (on some Android devices)

Android devices can vary greatly in their hardware and features. It has been discovered on some older devices that the audio system does not accurately report timing information used for synchronizing animation. This can result in choppy stuttering playback of animation, even though the audio may playback smoothly.

Post Processing Volume Parameters Not Listed

Whether using HDRP or URP, Volume component parameters for post processing effects may be animated using any behavior. When the project is properly configured, the properties for each effect are listed in the property selection menu. However, if the configuration is missing then only the basic Volume parameters are displayed.

Project is missing configuration setting and therefore not displaying all post processing parameters.
After adding the scripting define symbol, the additional parameters are now listed.

Subscenes and ECS not supported

Timeflow does not implement the Data-Oriented Technology Stack (DOTS) and is not compatible with the Entity Component System (ECS). Therefore, Timeflow nor any of its behaviors may be used in Subscenes. However, you may still use Timeflow normally and incorporate subscenes into your project as needed for other elements. The primary reasons ECS is not supported and may never be is due to the complexity of dependencies and managed shared objects in Timeflow, which cannot be streamlined into ECS structures in an efficient way.

Since ECS is only operational at runtime, implementing it into Timeflow would provide no creative advantages during editing and would likely introduce differences in behavior at runtime since the ECS implementation is entirely separate and has different operating rules to abide by. The ECS workflow is also geared for high volume output often using procedural generation, whereas Timeflow is designed to animate a specific set of objects created by the user in edit mode.

The type or namespace name 'MidiJack' could not be found (are you missing a using directive or an assembly reference?)

If you encounter this compile error, it means one of the following things:

  • MidiJack has not been installed properly.

  • The MIDIJACK scripting define symbol is set but MidiJack is not installed.

The type or namespace name 'InputSystem' does not exist in the namespace 'UnityEngine' (are you missing an assembly reference?)

If you encounter this error, it means that the new Input System is enabled but has not been properly installed.

CaptureScreenshotAsTexture() cannot be called outside of playmode.

This error may occur when interrupting a render using Render to Disk by exiting play mode. If this error occurs, it is harmless and may be ignored. Note also that the subsequent related error may appear and may also be ignored: RenderToDisk.RenderFrame: Failed encoding texture to JPG.

Measures inaccurately displayed in the timeline

When using musical timing, under some conditions it can occur that the measures increments displayed don't accurately match the timing. As shown in the example below, it would be expected to show measure 4.1.1 and not 3.5.8.

The frame rate in a build is much lower than in the editor

This is most often caused by VSync, which matches the framerate to the refresh rate of the display device. This is a helpful feature to render only what is needed, otherwise the GPU will work overtime and consume more power than needed.

For further information, see the Unity documentation regarding VSync: https://docs.unity3d.com/2021.3/Documentation/Manual/class-QualitySettings.html

Setting the parent of a transform which resides in a Prefab instance is not possible

If any component performs reparenting as part of its animation or behavior, this will result in the error above if it is in prefab. This is because Unity does not allow prefabs to have hierarchy changes.

'Timeflow' is a descendant of 'GameObject'...

This warning may occur with prefabs and indicates that your object hierarchy is invalid for Timeflow to function properly.

An incorrect setup where Timeflow is a child of a TimeflowObject
To fix this issue, make Timeflow the root of the prefab
It's also acceptable if the prefab root object is a regular game object without a TimeflowObject component.

Last updated