Keyframes and Effect Parameters: Difference between revisions

From Light Stream (EN)
(Перевод с русской вики (задача №963, LS Dev Hub))
 
(Перевод с русской вики (задача №1041, LS Dev Hub))
 
Line 1: Line 1:
[[ru:Ключевые кадры и параметры эффектов]] [[en:Keyframes and Effect Parameters]]
[[ru:Ключевые кадры и параметры эффектов]] [[en:Keyframes and Effect Parameters]]
A keyframe is a mark on the timeline where an effect parameter has a specific value. As long as there are no keyframes, the parameter keeps the same value for the whole length of the effect: the speed is always the same, the color is always the same. Set two keyframes with different values, and Light Stream will calculate the values in between on its own, so the parameter changes smoothly over time.
A keyframe is a mark on the timeline where an effect parameter has a specified value. As long as there are no keyframes, the parameter holds the same value for the entire length of the effect: the speed is always the same, the brightness is always the same. Set two keyframes with different values, and Light Stream will automatically calculate the values in between, so the parameter changes smoothly over time.


Keyframes can animate almost any property of an effect: opacity, speed, size, rotation angle, element count, color. This is how you create smooth fade-ins and fade-outs, acceleration and stopping, or a color change timed to an exact second.
Keyframes can animate the effect's opacity and any of its slider parameters: speed, size, number of elements, and the color components '''R''', '''G''', '''B'''. This is how you create smooth fade-ins and fade-outs, acceleration and stopping, and color changes at exactly the right second.


== Where Effect Parameters Are Located ==
== Where the Effect Parameters Are ==


Select the effect — click its bar on the '''Timeline''' or the row with its name. The parameters will appear in two places at once.
Select the effect — click its bar on the '''Timeline''' or the row with its name. The parameters appear in two places at once.


The '''Properties''' window — the full set of effect parameters: sliders, numeric fields, checkboxes, lists, color pickers. This is where it's convenient to adjust values by eye.
'''Properties''' window — the full set of the effect's parameters: sliders, numeric fields, checkboxes, lists, color pickers. This is where it's convenient to fine-tune values by eye. The parameter's name sits above its row, and the row itself looks like this: a numeric field, a slider, and to the right of it — the '''L''' button and the '''stopwatch''' icon.


The '''Timeline''' window — to the left of the time ruler, effects are listed. Click the triangle to the left of the effect's name, and the same parameters will expand below it, grouped together. Next to each parameter, on the time ruler itself, runs its own track — this is where keyframes live.
'''Timeline''' window — effects are listed to the left of the time scale. Besides the enable checkbox and the name, an effect's row has a '''blend mode''' list and an '''Opacity''' value with '''◀ ◆ ▶''' buttons. The triangle to the left of the name expands the effect's parameter list — but not all of it: only parameters with keyframe mode enabled are shown under the effect, as a plain list without groups. While there is no such parameter yet, the triangle is inactive. Opposite each row, on the time scale itself, runs that parameter's own track — this is where its keyframes live.


This is the same set of parameters shown in two different ways: a value changed in one window changes immediately in the other. It's more convenient to pick values in '''Properties''', and to place them in time on the '''Timeline'''.
This is the same set of values shown in two different ways: a value changed in one window changes in the other immediately too. It's more convenient to fine-tune values in '''Properties''', and to place them in time on the '''Timeline'''.


== Three Parameter States ==
== Three States of a Parameter ==


At any moment, each effect parameter is in one of three states, and only one of them is ever active.
At any moment, every effect parameter is in one of three states, and only one of them is ever active.


{| class="wikitable"
{| class="wikitable"
! State !! How it works
! State !! How it works
|-
|-
| '''Constant value''' || The value is set by a slider or field and does not change over time. This is how all parameters work by default
| '''Constant value''' || The value is set with a slider or a field and does not change over time. This is how all parameters work by default
|-
|-
| '''Keyframes''' || The value is set by keyframes on the parameter's track and changes over time. Between keyframes, the program calculates intermediate values
| '''Keyframes''' || The value is set by keys on the parameter's track and changes over time. Between keys, the program calculates intermediate values
|-
|-
| '''Function''' || The value is calculated using a formula — sine, linear, pulse, or noise — and repeats indefinitely while the effect is playing
| '''Function''' || The value is calculated from a formula — sine, linear, pulses, or noise — and repeats indefinitely for as long as the effect plays
|}
|}


== Enabling Keyframes ==
== Enabling Keyframes ==


The keyframe mode toggle is the '''stopwatch''' icon next to the parameter: in the '''Properties''' window it sits to the right of the slider, and on the '''Timeline''' it sits to the left of the parameter's name. A disabled stopwatch is gray; an enabled one glows orange.
The keyframe mode toggle is the '''stopwatch''' icon at the end of the parameter's row, to the right of the '''L''' button. It exists only in the '''Properties''' window — there is no stopwatch on the '''Timeline'''. A disabled stopwatch is grey, an enabled one is blue.


# Select the effect and find the parameter you need.
# Select the effect and find the parameter you need in the '''Properties''' window.
# Click the '''stopwatch''' — the parameter switches to keyframe mode.
# Click the '''stopwatch''' — the parameter switches to keyframe mode.


Nothing changes right after enabling it: as long as the parameter has no keyframes, it keeps its previous value.
As soon as it's enabled, the program places the first keyframe at the start of the effect, with the value the parameter had before. The picture doesn't change: a single key is still a constant value. However, the parameter now appears under the effect on the '''Timeline''' (if the effect was collapsed, it expands automatically), and it gets its own track.
 
The stopwatch is available for the effect's opacity and for all slider parameters. Color is animated by its components: it has three sliders — '''R''', '''G''' and '''B''' — and each has its own stopwatch. Checkboxes, lists, and text fields cannot be animated with keyframes.


== Placing Keyframes ==
== Placing Keyframes ==
Line 42: Line 44:


# Place the playback cursor on the '''Timeline''' where the first value should be.
# Place the playback cursor on the '''Timeline''' where the first value should be.
# Set the parameter's value — with the slider, the numeric field, or a color picker. A keyframe will appear on the parameter's track at the cursor's position.
# Set the parameter's value — with the slider or the numeric field. A key appears on the parameter's track at the cursor position.
# Move the cursor further along and set a different value — a second keyframe will appear.
# Move the cursor further and set another value — a second key appears.
# Done: between the two keyframes, the parameter smoothly transitions from the first value to the second.
# Done: between the two keys the parameter smoothly transitions from the first value to the second.


This also explains the main feature of keyframe mode: the slider and the field no longer set an "overall" value for the parameter — they edit the value at the cursor's position. If there is no keyframe on that frame, one is created; if there is, its value changes.
This also explains the main feature of keyframe mode: the slider and the field no longer set the parameter's “overall” value — they edit the value at the cursor position. If there's no key on that frame, one is created; if there is, its value is changed.


You can also place a keyframe without touching the value, using a button. In the parameter's row on the '''Timeline''' there are three small buttons — '''◀ ◆ ▶'''. The middle '''diamond''' button places a keyframe on the current frame with whatever value the parameter currently has; if a keyframe is already on that frame, clicking it again removes it.
You can place a key without touching the value using a button. The parameter's row on the '''Timeline''' has three small buttons — '''◀ ◆ ▶''' — followed by a value field and a trash-can button. The middle '''diamond''' button places a key on the current frame with the value the parameter currently has; if a key is already on that frame, pressing it again removes it. The same buttons appear in the effect's own row and work with its opacity: '''Opacity''' keys land directly on the effect's bar.


The third way is to work directly on the track. Double-click the parameter's track: it will switch to keyframe editing mode. Each subsequent double-click on the track creates a keyframe at that point the horizontal position sets the time, the vertical position sets the value: the bottom of the track corresponds to the parameter's minimum, the top to its maximum.
The third way is to work directly on the track. Double-click the parameter's track: it highlights, and diamond-shaped keys appear on it — this is edit mode. Each further double-click on the track creates a key at that point: the horizontal position sets the time, the vertical position sets the value the bottom of the track corresponds to the parameter's minimum, the top to its maximum.


Keyframes belong to the effect, not to the composition: a keyframe's time is measured from the start of the effect. If you move the effect along the timeline, its entire animation moves along with it.
The line connecting the keys is always visible on the track, but the diamonds themselves are visible only in edit mode.
 
Keys belong to the effect, not to the composition: a key's time is counted from the start of the effect. If you move the effect along the timeline, its entire animation moves together with it.


== Editing Keyframes ==
== Editing Keyframes ==


To work with existing keyframes, enter track editing mode — double-click the track. To exit the mode, press '''Enter''' or '''Esc'''.
To work with existing keys, enter the track's edit mode — double-click it. To exit edit mode, press '''Enter''' or '''Esc'''.


{| class="wikitable"
{| class="wikitable"
! Action !! How to do it
! Action !! How to do it
|-
|-
| Select a keyframe || Click the diamond on the track
| Select a key || Click the diamond on the track. The selected key turns red, and the key under the cursor turns white
|-
|-
| Select multiple keyframes || Click while holding '''Ctrl''' or '''Shift'''; or drag a selection box around the keyframes, starting from an empty spot on the track
| Select several keys || Click the keys while holding '''Ctrl''' or '''Shift'''
|-
|-
| Move a keyframe || Drag it: the horizontal position changes the time, the vertical position changes the value. Selected keyframes move together as a group
| Deselect || Click an empty spot on the track
|-
|-
| Delete a keyframe || '''Delete''' or '''Backspace'''; or right-click the keyframe → '''Delete'''
| Move a key || Drag it: horizontally changes the time, vertically changes the value. Selected keys move as a group
|-
|-
| Undo a mistake || '''Ctrl+Z''', to redo '''Ctrl+Shift+Z'''
| Delete a key || '''Delete''' or '''Backspace'''; or right-click the key → '''Delete'''
|-
| Undo a mistake || '''Ctrl+Z''', redo with '''Ctrl+Shift+Z'''
|}
|}


Keyframes snap exactly to the composition's frames, so two keyframes of the same parameter cannot end up at the same point.
Keys snap exactly onto the composition's frames, so two keys of the same parameter can never end up at the same point. Neighboring keys act as boundaries for each other: you can't drag a key past its neighbor and swap their places. A key also can't go beyond the effect's bounds — near its edges, dragging snaps to the start and end of the bar.


== Before the First and After the Last Keyframe ==
== Before the First and After the Last Key ==


Outside the outermost keyframes, the value does not change: before the first keyframe, the parameter holds the value of the first one; after the last, the value of the last one. The animation does not return to its initial state on its own. If the effect should end the same way it started, place another keyframe with the needed value at the end.
Beyond the outermost keys the value doesn't change: before the first key the parameter holds the first key's value, after the last key it holds the last key's value. The animation doesn't return to its initial state on its own. If the effect should end the same way it started, place one more key with the needed value at the end.


== Moving Between Keyframes ==
== Navigating Between Keys ==


The arrow buttons '''◀''' and '''▶''' on either side of the diamond move the playback cursor to the previous and next keyframe of this parameter, and select it at the same time.
The arrow buttons '''◀''' and '''▶''' on either side of the diamond move the playback cursor to the previous and next key of this parameter, select it, and open the track for editing.


This makes it easy to land exactly on a keyframe: jump to it with the arrow and adjust the value with the slider, without risking accidentally creating an extra keyframe nearby. If there are no more keyframes in that direction, the button does nothing.
This is a convenient way to land exactly on a key: jump to it with the arrow and adjust its value with the slider, without risking accidentally creating an extra key nearby. If there are no more keys in the given direction, the button does nothing.


== Turning Off the Animation ==
== Disabling the Animation ==


Click the '''stopwatch''' again — it will turn off, and the parameter will return to the constant value it had before keyframes were enabled.
Click the '''stopwatch''' again — it turns off, and the parameter reverts to the constant value it had before keyframes were enabled. The parameter's row disappears from the list under the effect on the '''Timeline''': only parameters in keyframe mode are shown there.


The keyframes you placed are not lost: turn the stopwatch back on, and the animation returns exactly as it was. To get rid of the animation for good, delete the keyframes from the track.
The '''trash-can''' button at the end of the parameter's row on the '''Timeline''' does the same thing — it removes the parameter from the timeline and returns it to a constant value.
 
In both cases the keys you placed aren't lost: turn the stopwatch back on, and the animation returns exactly as it was. To get rid of the animation for good, delete the keys from the track.


== Functions Instead of Keyframes ==
== Functions Instead of Keyframes ==


If what you need is not precisely-timed motion between points but an endless, uniform oscillation — blinking, smooth pulsing, random flickering — it's easier to assign the parameter a function instead of keyframes. A function is calculated on its own, needs no keyframes, and never ends while the effect is playing.
If you don't need precisely plotted movement through points but an endless, even oscillation — blinking, a smooth pulse, random flicker — it's easier to assign a function to the parameter instead of keys. A function calculates itself, needs no keys, and doesn't end for as long as the effect is playing.


Next to the parameter's slider in the '''Properties''' window there is an '''L''' button. Click it and choose '''Functions''', then pick the function you need.
Next to the parameter's slider in the '''Properties''' window there's an '''L''' button. Click it and choose '''Functions''', then the function you need.


{| class="wikitable"
{| class="wikitable"
! Function !! What it does
! Function !! What it does
|-
|-
| '''Sine''' || Smoothly drives the value from the minimum to the maximum and back. Good for "breathing," a smooth pulsing of brightness or size
| '''Sine''' || Smoothly drives the value from minimum to maximum and back. Good for “breathing,a smooth pulsing of brightness or size
|-
|-
| '''Linear''' || Steadily drives the value from the minimum to the maximum and starts over. The '''Both directions''' checkbox makes the value go back instead of jumping abruptly
| '''Linear''' || Evenly drives the value from minimum to maximum and starts over. The '''Back and Forth''' checkbox makes the value return instead of jumping back
|-
|-
| '''Pulse''' || Rectangular on/off switching: the value sits at the minimum, then jumps to the maximum. This is for strobe and blinking effects
| '''Pulses''' || Rectangular on/off switching: the value sits at the minimum, then jumps to the maximum. This is a strobe and blinking
|-
|-
| '''Noise''' || Random smooth changes — flickering, "living" fire, chaotic shimmer
| '''Noise''' || Random smooth changes — flicker, “living” fire, chaotic shimmer
|}
|}


The '''Settings''' item in the same menu opens the parameter window for the selected function.
The '''Settings''' item in the same menu opens the parameter window of the selected function. The set of fields depends on the function; the window closes with '''Enter''' or '''Esc'''.


{| class="wikitable"
{| class="wikitable"
Line 115: Line 123:
| '''Function duration, sec''' || The length of one cycle for the '''Sine''' and '''Linear''' functions
| '''Function duration, sec''' || The length of one cycle for the '''Sine''' and '''Linear''' functions
|-
|-
| '''Interval, sec''' || The length of one cycle for the '''Pulse''' function
| '''Interval, sec''' || The length of one cycle for the '''Pulses''' function
|-
|-
| '''Pulse distribution, %''' || The ratio of the off and on parts of the interval for the '''Pulse''' function
| '''Pulse distribution, %''' || The ratio between the off and on parts of the interval for the '''Pulses''' function
|-
|-
| '''Frequency''' || How fast the value changes for the '''Noise''' function
| '''Frequency''' || How fast the value changes for the '''Noise''' function
|-
|-
| '''Seed value''' || The random seed for '''Noise'''. The '''New''' button picks a different seed, changing the flickering pattern
| '''Seed value''' || The seed of the '''Noise''' random sequence. The '''New''' button picks a different seed, and the flicker pattern changes
|-
|-
| '''Minimum value''' and '''Maximum value''' || The bounds within which the value moves. Set as a fraction from 0 to 1 of the parameter's full range
| '''Minimum value, %''' and '''Maximum value, %''' || The bounds the value moves between. Set as a fraction from 0 to 1 of the parameter's full range
|-
|-
| '''Time offset, %''' || Shifts the function's phase. Useful when several effects share the same function and need to be offset in time from each other
| '''Time offset, %''' || Shifts the function's phase. Useful when several effects share the same function and need to be spread out in time
|-
|-
| '''Both directions''' || Only for '''Linear''': the value goes back and forth instead of jumping back to the start
| '''Back and Forth''' || '''Linear''' only: the value goes there and back, without jumping to the start
|}
|}


While a function is driving the parameter, the slider does not change it, and the '''L''' button glows orange. To return to manual control: '''L''' → '''Functions''' → '''Clear'''.
While a function is driving the parameter, the slider no longer changes it, and the button's label changes from '''L''' to '''F''' and lights up orange. To return to manual control, go to '''F''' → '''Functions''' → '''Clear'''.


== Controlling a Parameter Externally ==
== External Control of a Parameter ==


The same '''L''' button links the parameter to an external source, so you can control it live during the show instead of setting it in advance.
The same '''L''' button links the parameter to an external source, so it can be controlled live during a show instead of being set in advance.


* '''OSC''', '''MIDI''', '''DMX''' — the parameter starts listening for an incoming command: a message, a note, a channel. The program will open a window where you specify that command, or simply send it from the console.
* '''OSC''', '''MIDI''', '''DMX''' — the parameter starts listening for an incoming command: a message, a note, a channel. The program opens a window where you specify that command, or you can simply send it from a console.
* '''Virtual controller''' — the parameter is bound to a slider or a palette from the '''Virtual Controller''' window ('''Settings''' menu → '''Virtual Controller'''). Sliders and palettes are added in that window itself, and a single slider can drive several parameters of different effects at once — handy when the same brightness or color needs to be changed across the whole project with one motion.
* '''Virtual Controller''' — the parameter is bound to a slider or palette from the '''Virtual Controller''' window ('''Settings''' menu → '''Virtual Controller'''; you can also open it directly from this submenu via '''Open Virtual Controller'''). Sliders and palettes are added in that window itself, and a single slider can drive several parameters of different effects at once — handy when the same brightness or color needs to change across the whole project with one move.


The '''L''' button glows orange if the parameter has at least one binding; hover over it to see a tooltip listing the bindings. The '''Clear''' item at the end of the menu removes them all.
The button lights up orange if the parameter has at least one binding; hover over it to see a tooltip listing the bindings. The '''Clear''' item at the end of the menu removes all of them and also clears the function. It doesn't touch keyframes.


== If Something Goes Wrong ==
== If Something Goes Wrong ==


'''The slider doesn't change the parameter.''' The parameter has keyframe mode enabled or a function assigned. In keyframe mode, the value is edited at the cursor's position and written into a keyframe; with a function, it can't be edited at all. Turn off the stopwatch or clear the function to restore normal behavior.
'''The slider doesn't change the parameter.''' The parameter has keyframe mode enabled or a function assigned. In keyframe mode the value is edited at the cursor position and written into a key; with a function it can't be edited at all. Turn off the stopwatch or clear the function to restore normal behavior.
 
'''The parameter I need isn't shown under the effect on the timeline.''' Only parameters with keyframe mode enabled are shown there. Find the parameter in the '''Properties''' window and click its '''stopwatch'''.


'''The effect doesn't return to its initial state.''' After the last keyframe, the value is simply held. Place a final keyframe where the animation should reach its end state.
'''The effect doesn't return to its initial state.''' After the last key the value simply holds. Place a final key where the animation should reach its end state.


'''The program lags on animation with a lot of keyframes.''' Updating values in real time noticeably loads the computer. Turn off the '''Update keyframe data during playback''' setting — '''Settings''' menu → '''Properties''', '''General''' tab, '''Miscellaneous''' group. The animation is still calculated as before, only the numeric fields stop updating on the fly.
'''The program lags on animations with a large number of keys.''' Updating values in real time noticeably loads the computer. Turn off the '''Update Keyframe Data During Playback''' setting — '''Settings''' menu → '''Properties''' (''Ctrl+P''), '''General''' tab, '''Other''' group. The animation is still calculated as before, only the numeric fields stop updating on the fly.


== See also ==
== See Also ==


* [[Настройки эффектов]]
* [[Effect Settings]]
* [[Добавление эффекта в композицию]]
* [[Adding an Effect to a Composition]]
* [[Расстановка эффектов по времени]]
* [[Расстановка эффектов по времени]]
* [[Таймлайн]]
* [[Таймлайн]]
* [[Режимы смешивания]]
* [[Режимы смешивания]]
* [[Терминология]]
* [[Терминология]]

Latest revision as of 13:14, 3 September 2026

A keyframe is a mark on the timeline where an effect parameter has a specified value. As long as there are no keyframes, the parameter holds the same value for the entire length of the effect: the speed is always the same, the brightness is always the same. Set two keyframes with different values, and Light Stream will automatically calculate the values in between, so the parameter changes smoothly over time.

Keyframes can animate the effect's opacity and any of its slider parameters: speed, size, number of elements, and the color components R, G, B. This is how you create smooth fade-ins and fade-outs, acceleration and stopping, and color changes at exactly the right second.

Where the Effect Parameters Are

Select the effect — click its bar on the Timeline or the row with its name. The parameters appear in two places at once.

Properties window — the full set of the effect's parameters: sliders, numeric fields, checkboxes, lists, color pickers. This is where it's convenient to fine-tune values by eye. The parameter's name sits above its row, and the row itself looks like this: a numeric field, a slider, and to the right of it — the L button and the stopwatch icon.

Timeline window — effects are listed to the left of the time scale. Besides the enable checkbox and the name, an effect's row has a blend mode list and an Opacity value with ◀ ◆ ▶ buttons. The triangle to the left of the name expands the effect's parameter list — but not all of it: only parameters with keyframe mode enabled are shown under the effect, as a plain list without groups. While there is no such parameter yet, the triangle is inactive. Opposite each row, on the time scale itself, runs that parameter's own track — this is where its keyframes live.

This is the same set of values shown in two different ways: a value changed in one window changes in the other immediately too. It's more convenient to fine-tune values in Properties, and to place them in time on the Timeline.

Three States of a Parameter

At any moment, every effect parameter is in one of three states, and only one of them is ever active.

State How it works
Constant value The value is set with a slider or a field and does not change over time. This is how all parameters work by default
Keyframes The value is set by keys on the parameter's track and changes over time. Between keys, the program calculates intermediate values
Function The value is calculated from a formula — sine, linear, pulses, or noise — and repeats indefinitely for as long as the effect plays

Enabling Keyframes

The keyframe mode toggle is the stopwatch icon at the end of the parameter's row, to the right of the L button. It exists only in the Properties window — there is no stopwatch on the Timeline. A disabled stopwatch is grey, an enabled one is blue.

  1. Select the effect and find the parameter you need in the Properties window.
  2. Click the stopwatch — the parameter switches to keyframe mode.

As soon as it's enabled, the program places the first keyframe at the start of the effect, with the value the parameter had before. The picture doesn't change: a single key is still a constant value. However, the parameter now appears under the effect on the Timeline (if the effect was collapsed, it expands automatically), and it gets its own track.

The stopwatch is available for the effect's opacity and for all slider parameters. Color is animated by its components: it has three sliders — R, G and B — and each has its own stopwatch. Checkboxes, lists, and text fields cannot be animated with keyframes.

Placing Keyframes

The shortest way is simply to set the parameter's value at different points in time.

  1. Place the playback cursor on the Timeline where the first value should be.
  2. Set the parameter's value — with the slider or the numeric field. A key appears on the parameter's track at the cursor position.
  3. Move the cursor further and set another value — a second key appears.
  4. Done: between the two keys the parameter smoothly transitions from the first value to the second.

This also explains the main feature of keyframe mode: the slider and the field no longer set the parameter's “overall” value — they edit the value at the cursor position. If there's no key on that frame, one is created; if there is, its value is changed.

You can place a key without touching the value using a button. The parameter's row on the Timeline has three small buttons — ◀ ◆ ▶ — followed by a value field and a trash-can button. The middle diamond button places a key on the current frame with the value the parameter currently has; if a key is already on that frame, pressing it again removes it. The same buttons appear in the effect's own row and work with its opacity: Opacity keys land directly on the effect's bar.

The third way is to work directly on the track. Double-click the parameter's track: it highlights, and diamond-shaped keys appear on it — this is edit mode. Each further double-click on the track creates a key at that point: the horizontal position sets the time, the vertical position sets the value — the bottom of the track corresponds to the parameter's minimum, the top to its maximum.

The line connecting the keys is always visible on the track, but the diamonds themselves are visible only in edit mode.

Keys belong to the effect, not to the composition: a key's time is counted from the start of the effect. If you move the effect along the timeline, its entire animation moves together with it.

Editing Keyframes

To work with existing keys, enter the track's edit mode — double-click it. To exit edit mode, press Enter or Esc.

Action How to do it
Select a key Click the diamond on the track. The selected key turns red, and the key under the cursor turns white
Select several keys Click the keys while holding Ctrl or Shift
Deselect Click an empty spot on the track
Move a key Drag it: horizontally changes the time, vertically changes the value. Selected keys move as a group
Delete a key Delete or Backspace; or right-click the key → Delete
Undo a mistake Ctrl+Z, redo with Ctrl+Shift+Z

Keys snap exactly onto the composition's frames, so two keys of the same parameter can never end up at the same point. Neighboring keys act as boundaries for each other: you can't drag a key past its neighbor and swap their places. A key also can't go beyond the effect's bounds — near its edges, dragging snaps to the start and end of the bar.

Before the First and After the Last Key

Beyond the outermost keys the value doesn't change: before the first key the parameter holds the first key's value, after the last key it holds the last key's value. The animation doesn't return to its initial state on its own. If the effect should end the same way it started, place one more key with the needed value at the end.

Navigating Between Keys

The arrow buttons and on either side of the diamond move the playback cursor to the previous and next key of this parameter, select it, and open the track for editing.

This is a convenient way to land exactly on a key: jump to it with the arrow and adjust its value with the slider, without risking accidentally creating an extra key nearby. If there are no more keys in the given direction, the button does nothing.

Disabling the Animation

Click the stopwatch again — it turns off, and the parameter reverts to the constant value it had before keyframes were enabled. The parameter's row disappears from the list under the effect on the Timeline: only parameters in keyframe mode are shown there.

The trash-can button at the end of the parameter's row on the Timeline does the same thing — it removes the parameter from the timeline and returns it to a constant value.

In both cases the keys you placed aren't lost: turn the stopwatch back on, and the animation returns exactly as it was. To get rid of the animation for good, delete the keys from the track.

Functions Instead of Keyframes

If you don't need precisely plotted movement through points but an endless, even oscillation — blinking, a smooth pulse, random flicker — it's easier to assign a function to the parameter instead of keys. A function calculates itself, needs no keys, and doesn't end for as long as the effect is playing.

Next to the parameter's slider in the Properties window there's an L button. Click it and choose Functions, then the function you need.

Function What it does
Sine Smoothly drives the value from minimum to maximum and back. Good for “breathing,” a smooth pulsing of brightness or size
Linear Evenly drives the value from minimum to maximum and starts over. The Back and Forth checkbox makes the value return instead of jumping back
Pulses Rectangular on/off switching: the value sits at the minimum, then jumps to the maximum. This is a strobe and blinking
Noise Random smooth changes — flicker, “living” fire, chaotic shimmer

The Settings item in the same menu opens the parameter window of the selected function. The set of fields depends on the function; the window closes with Enter or Esc.

Parameter What it sets
Function duration, sec The length of one cycle for the Sine and Linear functions
Interval, sec The length of one cycle for the Pulses function
Pulse distribution, % The ratio between the off and on parts of the interval for the Pulses function
Frequency How fast the value changes for the Noise function
Seed value The seed of the Noise random sequence. The New button picks a different seed, and the flicker pattern changes
Minimum value, % and Maximum value, % The bounds the value moves between. Set as a fraction from 0 to 1 of the parameter's full range
Time offset, % Shifts the function's phase. Useful when several effects share the same function and need to be spread out in time
Back and Forth Linear only: the value goes there and back, without jumping to the start

While a function is driving the parameter, the slider no longer changes it, and the button's label changes from L to F and lights up orange. To return to manual control, go to FFunctionsClear.

External Control of a Parameter

The same L button links the parameter to an external source, so it can be controlled live during a show instead of being set in advance.

  • OSC, MIDI, DMX — the parameter starts listening for an incoming command: a message, a note, a channel. The program opens a window where you specify that command, or you can simply send it from a console.
  • Virtual Controller — the parameter is bound to a slider or palette from the Virtual Controller window (Settings menu → Virtual Controller; you can also open it directly from this submenu via Open Virtual Controller). Sliders and palettes are added in that window itself, and a single slider can drive several parameters of different effects at once — handy when the same brightness or color needs to change across the whole project with one move.

The button lights up orange if the parameter has at least one binding; hover over it to see a tooltip listing the bindings. The Clear item at the end of the menu removes all of them and also clears the function. It doesn't touch keyframes.

If Something Goes Wrong

The slider doesn't change the parameter. The parameter has keyframe mode enabled or a function assigned. In keyframe mode the value is edited at the cursor position and written into a key; with a function it can't be edited at all. Turn off the stopwatch or clear the function to restore normal behavior.

The parameter I need isn't shown under the effect on the timeline. Only parameters with keyframe mode enabled are shown there. Find the parameter in the Properties window and click its stopwatch.

The effect doesn't return to its initial state. After the last key the value simply holds. Place a final key where the animation should reach its end state.

The program lags on animations with a large number of keys. Updating values in real time noticeably loads the computer. Turn off the Update Keyframe Data During Playback setting — Settings menu → Properties (Ctrl+P), General tab, Other group. The animation is still calculated as before, only the numeric fields stop updating on the fly.

See Also