Curve Editor User Guide
Document Summary: Guide to using the Unreal Curve Editor.
Created by James Golding. Maintained by Richard Nalezynski.
Introduction
UnrealEngine 3 uses its curve editor to allow fine control over properties that change over time. It is currently used in both the Matinee? and Cascade? tools.
Using the Curve Editor
The Curve Editor can be open from either Matinee? or Cascade?.
Curve Editor Overview
Curve Editor Layout
Here is a shot of the Curve Editor in action:
| 1 | Fit visible tracks horizontally. |
| 2 | Fit visible tracks vertically. |
| 3 | Pan/Edit mode. |
| 4 | Zoom mode. |
| 5 | Auto-curve mode. |
| 6 | User curve mode. |
| 7 | Curve break mode (corner). |
| 8 | Linear mode. |
| 9 | Constant mode. |
| 10 | Curve name key. |
| 11 | Show/Hide Curve button. |
| 12 | Curve tangent handle. |
Controls
The controls for using the Curve Editor are similar to other tools in UnrealEngine 3:
Mouse Controls
In Pan/Edit mode:
| Click-drag on background | Pan view around |
| Mouse wheel | Zoom in and out |
| Click on key | Select point |
| Ctrl-click on point | Toggle selection of point |
| Ctrl-click on curve | Add new key at clicked location |
| Ctrl-drag | Move current selection |
| Ctrl-Alt-drag | Box select |
| Ctrl-Alt-Shift-drag | Box select (add to current selection) |
In Zoom mode:
| Left-click, drag vertically | Zoom Y axis (output) |
| Right-click, drag horizontally | Zoom X axis (input) |
Keyboard Controls
In Pan/Edit mode:
| Delete | Delete selected points |
| Ctrl-Z | Undo |
| Ctrl-Y | Redo |
| Z | Puts you into Zoom mode while held. |
Note that not all tools using the Curve Editor may support Undo/Redo.
Hot Keys
Working with Curves
Interpolation Modes
The interpolation mode buttons (numbers 5 thru 9 in diagram) control the method each point on the curve will use to reach the next point. If you are using one of the curve modes (Auto, User or Break), you will see white handles (number 12 in diagram) that you can click and drag to give you more control over the curve between points. If you select a key the is in Auto curve mode and adjust its tangents using the white handles (number 12), it will automatically convert to Manual curve mode.
Preset Curves
The curve editor now supports preset curves - both a set of simple auto-generated curves, as well as the ability to save and reuse user-created curves.
NOTE: Be aware that preset-curves simply provide a template for curves to be used in the CurveEditor. They are provided as a time-saver to eliminate the need to recreate the same curves over-and-over. CurveEdPresetCurve is a simple holder object for storing the data associated with a user-saved preset curve. They can not be used to 'share' a curve between several objects.
Auto-generated Curves
To utilize the auto-generated curves supplied with the engine, simply right-click the curve you wish to fill in on the left-hand column of the curve editor and select `Preset Curves'. The following dialog will be displayed, with the available sub-curves enabled according to the distribution type that the curve represents:
Figure 1: The PresetCurve Dialog
The following choices will be available in the preset drop-down combo boxes:
- Do Not Preset - Leaves the curve that is present as-is.
- Cos Wave - Generates a curve using the time (horizontal) value as the input to the Cosine function (the vertical value).
- Sine Wave - Generates a curve using the time (horiztonal) value as the input to the Sine function (the vertical value).
- Linear Decay - Generates a curve featuring a linear decay.
- User-Set - Allows for loading and using a user-defined curve that was previously saved.
When the Cos Wave or Sine Wave preset are selected, the following setup parameters are displayed:
- Frequency - the frequency of the wave over the time period (currently pinned to [0.0..1.0]).
- Scale - the scale factor to multiple the calculated value by. Allows for sizing the curve to the users wishes.
- Offset - the offset to apply to the value (after it is scaled). This allows for ensuring all values are positive, etc.
An example of a Cos Wave generated with a frequency of 2.0, a scale of 0.5, and an offset of 1.0 is shown below:
Figure 2: A generated Cos Wave example
When the Linear Decay preset is selected, the following setup parameters are displayed:
- StartDecay - the time to start the decay.
- StartValue - the value to start the curve at.
- EndDecay - the time to stop the decay.
- EndValue - the value to end the decay at.
An example of a Linear Decay generated with the start decay value of 0.2, start value of 0.9, an end decay value of 0.8, and an end value of 0.25 is shown below:
Figure 3: A generated Linear Decay example
Note that the curve in this case will require some tweaking. By default, all the auto-generated curves use the AutoSet curve interpolation method. In the Linear Decay case, selecting each point and setting the interpolation method to linear will `correct' the curve.
User-Set Curves
To utilize user-set curves, you must first create a CurveEdPresetCurve instance in a package. This is done by right-clicking the generic browser and selecting "New CurveEdPresetCurve". You can name the curve if you like, but this is not used at the current time. Otherwise, no parameters are publicly displayed by the object.
Once this is done, you can save a curve to this object by right-clicking the curve label that you wish to save in the left-hand column of the curve editor and selecting "Save Preset Curve". This will also open the PresetCurve dialog, but this time, the only options available are the following:
- Do Not Preset ** Do not save this curve.
- User-Set ** Save this curve.
When User-Set is selected, the following dialog is displayed:
Figure 4: The User-Set Property Window
Select the curve in the generic browser you wish to save the curve to, and click the "Use Current Object" button on the property window. Hit the OK button, and you will save the curve to the contents of the selected Curve object.
This curve can now be used when presetting curves simply by selecting the User-Set option and selecting the curve to utilize from the generic browser.
USAGE NOTE 1: Occasionally, when you select an option via mouse-clicking in the Preset combo box, it doesn't properly update the dialog. When this occurs, simply select the combo box, and use the up and down arrows to select a preset curve option.
USAGE NOTE 2: Currently, preset curves are not available for VectorUniformCurve distributions. This will be remedied as soon as possible.