Flow Sequencer [FS] is a Work in progress keyframe based sequencer for dynamically changing a Value or Reference. It is currently being developed by Mint Shock. It utilizes Spatial variables to read and write data do discrete Keyframes.
Main Features
- Easy to use ui inspired by traditional linear animation tools like Blenders Timeline.
- Leverage Spatial variables to read values and references in a performant way.
- This also means that FS supports all types that are supported by Spatial variables.
- Support for System Standard to expand its capabilities.
- More Value Types and Interpolations.
- Special Keyframes types that can trigger custom behavior when read.
- Custom displays for a keyframes values.
- Easily grab a reference to a field or reference from an inspector and drop it onto the tracks output.
- Easily drive the readhead position with any float value even ones being driven by other tracks.
- Tool for editing the values that are contained in a keyframe.
Structure
FS is split into discrete levels. Each level has a specific responsability. The heaviest elements will be contained on the upper levels to minimize code and asset duplication.
1. Systems
This is the System Standard Systems/Root
slot. All Systems will be installed into here.
1.1 Standard Systems
FS comes with some preinstalled Systems. Some of these should not be removed by the enduser and will have the System/Core
variable set to true.
1.1.1 FS Manager
Contains all common assets, settings, and ProtoFlux.
1.1.2 FS Templates
Contains all templates that are used by FS
Category | Specifity | Note | Included Templates | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Track |
|
Used to generate a track. | / | |||||||||||
Keyframe |
|
Used to spawn a keyframe of a specific type and interpolation on a track of matching type. |
| |||||||||||
Keyframe Visual |
|
Used to spawn a visualization for a given Keyframe while respecting the interpolation mode. |
| |||||||||||
Readhead |
|
Used to generate a Readhead that can read the specified type on a track. |
| |||||||||||
Value preview |
|
Used for both the left side Ui (the small readout) next to the track name labled "output" and the readhead preview. The value can be grabbed from the left side ui and then be sourced or value copied elswhere. |
| |||||||||||
Edit Ui |
|
Used to generate the floating edit ui for keyframes. Similar Types (like float, float2, float3, floatQ...) can share one Template. The floating ui knows what parts of the template should be enabled for the current keyframe.
So for example for a linear float2 keyframe it would show the folowing:
|
|
1.2 FS Extensions
Location to install third party systems that expand on FS's capabilities.
2. Timeline
Is a group of tracks. Contains common handling for Track length, Timeline progress and readhead progress.
Also responsible for managing the size, appearance and readhead position of it tracks.
2.1 Track
Holds a set of Keyframes and is able to read their values utilizing Spatial variables and exposing that as an output.
2.1.1 Keyframe
Store their values inside of a BoxValueSpatialVariable
(either constant or Gradient). Values can be changed trough an ui that parents itself under the keyframe and writes to specific Dynamic variables.
Keyframes can have any kind of visualization you want. From nothing to something super complex. The sky is the limit.