UDN
Search public documentation:

MatineeTrackReference
日本語訳
中国翻译
한국어

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

UE3 Home > Unreal Editor and Tools > Matinee User Guide > Matinee Track Reference
UE3 Home > Matinee & Cinematics > Matinee Track Reference
UE3 Home > Cinematic Artist > Matinee Track Reference

Matinee Track Reference


Overview


Matinee provides many built-in track types that allow for animating different types of data on various types of actors.

Bool Property Track


The Bool Property track provides control over a boolean variable in the actor connected to the group containing the track. When adding the track, a dialog will appear allowing you to choose from all boolean properties able to be controlled by Matinee belonging to the connected actor.

Properties

  • Property name - Read-only variable indicating the name of the property in the connected actor which this track will modify over time.

Event Track


The Event track gives Matinee a mechanism for firing events back into Kismet at particular points in the sequence. When you place a keyframe on an Event Track, you will be asked for an Event name. Each discrete Event Name will create a new Output connector on the Matinee Action. When the sequence reaches the Event key, any Kismet Sequence Objects connected to that output will be activated. If you have multiple keys with the same name, one output connector will be created, but it will be activated when each of the keys are passed.

Here is an Event Track with one key called `SpawnBeasts'.

event_track.jpg

And this is the Matinee Action in Kismet, showing the new output connector, which you can connect to a set of scripted events.

event_connector.jpg

The eventarrows.jpg buttons on the Event Track header allow you to control if the output should be fired when the sequence is playing forwards, backwards, or both. If the right arrow button is yellow, events on that track will fire as they are passed when the sequence is playing forwards. If the left arrow button is yellow, events are fired when the sequence is played backwards.

It does not matter what Group an Event Track is in, and there does not have to be an Actor attached to its Group.

If you right-click on an Event Key you can rename it. Doing so will rename any other Keys with the same name, and the output connector on the Matinee Action.

Properties

  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • Fire Events When Backwards - If true, events for this track will be fired when the Matinee is playing in reverse.
  • Fire Events When Forwards - If true, events for this track will be fired when the Matinee is playing forwards.
  • Fire Events When Jumping Forward - If true, allows all of the events in the track to be fired even if the Matinee is skipped.

FaceFX Track


The FaceFX track provides the ability to play FaceFX facial animations from an array of specified FaceFX AnimSets on skeletal mesh actors.

Properties

  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • FaceFX AnimSets - List of additional FaceFX AnimSets to pull animation data from.

Anim Control Track


This track type allows you to easily assign and preview animation on an Actor in the scene. By default, it only works with SkeletalMeshActors, but support can be quite easily added to any Actor class by a programmer.

The first thing to do when using an Anim Control track is to add the AnimSets that you wish to use to the GroupAnimSets array in the group properties. Once you have done this, scrub to the point where you want to start an animation playing, select the track and a new key. You will be shown a combo box containing all the names of AnimSequences in the AnimSets you chose. Simple select the animation you want to play and press OK, and you should see the animation appear as a blue block on the track. You can then move the animation around in the same way you would modify any other key type. Scrubbing will also let you preview the animation applied to the Actor in the editor, which makes setting up complex camera moves and close-ups much easier.

You can also tell an animation to loop by selecting it, right clicking on it and choosing 'Set Looping' or 'Set Non-Looping'. When an animation is looping, it will continue until the end of the Matinee sequence, or until another animation is played on the track. A looping animation will show each repeat in dark blue with a black tick, as you can see with the Fire_Auto_01 animation in the screenshot below:

matinee_animcontrol.jpg

You can also modify the start and end offset for an animation by right clicking on it and selecting the option from the menu. Another useful feature when working with an AnimControl Track is the 'Razor' tool. This allows you to cut one animation block into 2 pieces at a particular location. Simply select the AnimControl track, scrub to the desired location and press the 'R' key.

Animations can also be cropped/resized using the end markers that appear when the animation is selected. If these markers are dragged normally they will modify the start and end offsets of the animation (cropping the animation). If they are dragged while holding control down, they will modify the playrate of the animation (stretching the animation). If they are held while holding ALT down, they will keep the animation the same time length but modify the start/end offsets and then auto adjust the playrate to keep the animation the same length.

animcrop.jpg

Note that Notifies in the animation will only get executed when the Matinee sequence is being played forwards.

See the Matinee Anim Control Track page for more details about using this track.

Float Material Param Track


The Float Material Param track is used to modify Scalar Parameters within materials during runtime. The track takes a list of materials and modifies the value of the given parameter in those materials.

Properties

  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • Curve Tension - Controls how 'sharp' the corners in the animation curve are, when not manually adjusting keyframe tangents.
  • Materials - List of materials whose parameters will be modified and references to those materials that need to be given MaterialInstanceConstants in the level, compiled at save time.
  • Param Name - Name of the parameter in the materials to modify.

Float Particle Param Track


The Float Particle Param track is used to modify parameter distributions within particle systems during runtime. Any parameters with the given parameter name in the particle system connected to the group containing the track will be modified. This means you could have a fire particle system with emitters for the flames, sparks, and smoke where each emitter has a paramter controlling the spawn rate named SpawnRate. A single Float Particle Param track could drive all of these parameters to control the fire.

Properties

  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • Curve Tension - Controls how 'sharp' the corners in the animation curve are, when not manually adjusting keyframe tangents.
  • Param Name - Name of the parameter in the particle system to modify.

Float Property Track


The Float Property Track allows you to modify the value of a floating-point property of an Actor over time, such as Brightness for a light, or DrawScale for a StaticMesh Actor. When you create the Track it will bring up a combo box showing all modifiable properties of that Group's Actor. Select the one you want and then add/modify keyframes in the same way as you would for a Movement Track. You can also use the CurveEditor? to adjust the value of the parameter over time.

Properties

  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • Curve Tension - Controls how 'sharp' the corners in the animation curve are, when not manually adjusting keyframe tangents.
  • Property Name - Read-only variable indicating the name of the property in the connected actor which this track will modify over time.

Morph Weight Track


The Morph Weight track can control the weighting of a morph node in the AnimTree applied to the actor connected to the group containing the track.

Properties

  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • Curve Tension - Controls how 'sharp' the corners in the animation curve are, when not manually adjusting keyframe tangents.
  • Morph Node Name - Name of the morph node in the AnimTree to control.

SkelControl Scale Track


The SkelControl Scale track can control the scale of a skeletal controller in the AnimTree applied to the actor connected to the group containing the track. This can be used to perform customized animations on skeletal meshes.

Properties

  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • Curve Tension - Controls how 'sharp' the corners in the animation curve are, when not manually adjusting keyframe tangents.
  • Skel Control Name - Name of the skeletal controller in the AnimTree to control.

Linear Color Property Track


The Linear Color Property Track is used to modify a linear color variable in the attached actor. The components of a linear color take values in the range 0 to 1 (or higher to overdrive the component).

Properties

  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • Curve Tension - Controls how 'sharp' the corners in the animation curve are, when not manually adjusting keyframe tangents.
  • Property Name - Read-only variable indicating the name of the property in the connected actor which this track will modify over time.

Movement Track


One of the most important Track classes is the Movement Track. This is used to move an Actor around in the scene over time. Creating a path for an Actor to follow is simply a matter of selecting the Movement track you want to modify and doing the following:

  • Scrub to the time when you want to add the new keyframe.
  • Press the Enter key or the `Add Key' button to create a new keyframe at that time.
  • Move the Actor to the desired position for that frame.

Then repeat this for each keyframe. It is a very good idea to create an initial keyframe for the Actor at its initial position at level load and then not move that keyframe. Otherwise you may see a `pop' when playback begins as the Actor moves to the position proscribed by the animation data.

move_3dpath.jpg

You will see the path of the Actor in the 3D viewport. Paths are drawn in yellow when the Group is selected, and the Group editor color the rest of time. You can click on the large keys in the 3D viewport to select a key and allow you to edit it in the same way as you would select them in the main Matinee window. The smaller ticks indicate are at 0.1 second intervals, and so give you an idea of the speed of the object.

When a keyframe is selected you will see white handles in the level viewports which allow you to control the velocity at that key and reshape the curve. By default the interpolation mode between keyframes is a curve, but you change the interpolation mode by right-clicking on a key in the main Matinee and using the `Interp Mode' menu. The color of the keyframe triangle in the Matinee window indicates the current interpolation mode its using.

interp_mode_menu.jpg

You can also use the `Send To Curve Editor' button (see number 16 in diagram) to use the CurveEditor? to get fine control over the translation and rotation of the Actor over time. Use the bShowRotationOnCurveEd and bShowTranslationOnCurveEd options in the Movement track to control whether you are viewing the rotation and/or translation curves.

Properties

  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • Ang Curve Tension - Controls how 'sharp' the changes in rotation direction are, when not manually adjusting keyframe tangents. Only effective if using Euler rotational interpolation mode.
  • Disable Movement - Allows you to disable this movement track in preview. Useful when keyframing Actors relative to another Actor.
  • Hide 3D Track - Toggles display of the track's 3D movement path in the viewport.
  • Lin Curve Tension - Controls how 'sharp' the corners in the movement track are, when not manually adjusting keyframe tangents.
  • Look At Group Name - The name of the Group this Actor should point at (only used if RotMode is IMR_LookAtGroup).
  • Move Frame - Read-only variable indicating if Movement track is in World or Relative To Initial reference frame. Change by right clicking on Track title.
  • Rot Mode - Allows you to choose the method for determining the rotation of the controlled Actor.
  • Show Arrow At Keys - Displays an arrow at each keyframe to allow you to see the orientation at each keyframe.
  • Show Rotation On Curve Ed - When displaying the Movement track on the Curve Editor, show curves for rotation. Only works if bUseQuatInterpolation is false.
  • Show Translation On Curve Ed - When displaying the Movement track on the Curve Editor, show curves for translation.
  • Use Quat Interpolation - Chooses between Quaternion and Euler rotational interpolation methods.

Movement Reference Frames

There are two reference frames in which you can keyframe your object - `World' and `Relative To Initial'.

`World' is the simplest - it just stores each keyframe as a position relative to the level. When you play the sequence, the object will jump to exactly where in the level you placed the keyframes. This guarantees where your object will be, but can be annoying when you want to move parts of the level around, or re-use your animation on other objects (more on re-using Matinee Data later on).

`Relative To Initial' will initialize the interpolation to start the Actor it is modifying in its current pose. So if the Actor place somewhere else in the level, the movement will be moved as well, and will execute relative to the initial position of the Actor. Also, if a `Relative To Initial' movement track of an object moves it along its local X axis, rotating the Actor would cause it to move in the rotated direction. This makes it very useful for applying one animation to lots of different Actors in your level. Doing so with using the `World' reference frame would cause all the Actors to jump to the same location when the sequence started.

The diagram show a `Relative To Initial' motion applied to two object with different locations and orientations.

reltoinitial_motion.jpg

To choose which reference frame a Movement track is working in, right click on the Title header on the left and choose the desired frame from the menu.

reframe_menu.jpg

Rotation Interpolation

Matinee uses two different rotation interpolation schemes to rotate Actors between keyframes - `Euler' and `Quaternion'.

`Euler' is the default and works by interpolating the Yaw, Pitch and Roll of the Actor between the values at keyframes. This allows you to edit the 3 curves for orientation over time in the Curve Editor and control ease-in/ease-out between keyframes. It also supports winding - that is, if you rotate an object multiple times around, the keyframe will store the number of complete revolutions instead of throwing it away. This makes it easy to keyframe something like a screw going into a wall, and also gives you complete control over which direction an Actor takes when moving between two orientations.

`Quaternion' interpolation does not support winding, and is essentially linear between keyframes with no support for ease in/out. However, it is more robust and will always find the `shortest' route between two different orientations.

You can control which method is being used by toggling the bUseQuatInterpolation option (see below).

Rotation Modes

Sometimes you do not want the orientation of an object or camera to be keyframed explicitly. There are 2 different Rotation modes in Matinee at the moment:

`Keyframed' is the default, where the orientation of the Actor is determined by keyframes.

`Look At Group' specifies that you want to Actor to always point at the Actor controlled by another Group. This is useful when using a camera, as you can have it always look at a particular target wherever it moves. To use, type into the LookAtGroupName field the name of the Group in you wish the Actor to point at, and set the RotMode setting to IMR_LookAtGroup.

Movers Relative To Other Groups

It is possible to have a movement track keyframe lookup its transformation info from another group in the same Matinee sequence. This means that a keyframe can point to a moving object and have the movement track interpolate to that position. An example usage case of this would be animating a projectile that always hits a character moving in a non-predictable fashion.

To setup a keyframe to lookup its position from another group, right click on the keyframe and choose "Select Transform Lookup Group..."

lookup_track1.jpg

This will show a dialog that lets you choose a group to lookup transform information from.

lookup_track2.jpg

After selecting a group, the keyframe will have the lookup group's name displayed above it. The image below displays 4 key frames that are using the group's Box1 and Box2 to lookup their positioning info.

lookup_track3.jpg

To clear a lookup group for a keyframe, right click on the keyframe and choose "Clear Transform Lookup Group".

lookup_track4.jpg

MatineeLookupTest.ut3 is an example map that uses this feature and can be found in the DemoContent/TestMaps folder.

Movers Relative To Movers

In UnrealEngine 3 it is possible to keyframe one object to move relative to another. This may be useful when, for example, you want to keyframe the opening of a door on a moving train carriage.

To do this, simply set the Base of the Actor you are keyframing to the Actor you wish it to move relative to before you begin keyframing.

Path Building

Quite often the initial position for Actors like doors is in the `shut' pose. When building the path network for the AI system, it will not be able to find a path through the doorway because the Mover is in the way. To get around this problem, you can set a specific point in your Matinee sequence to be used when building paths. Simply scrub to the point in the sequence you want the Actors to be in when building paths and choose `Save As Path-Building Positions' from the `Edit' menu. A small blue check will appear on the scrub bar to show the current path-building playback position:

pathbuild_pos.jpg

For a Matinee Action to move its Actors when path building takes place, you will also need to check the `bInterpForPathBuilding' flag on the Action itself. Note that you cannot have more than one Matinee Action with bInterpForPathBuilding true acting on a particular Actor, as it is ambiguous which position is desired.

Separating Translation and Rotation

It is now possible to "split" a movement track's translation and rotation components so they can be keyframed individually on each axis. This allows finer control over movement track curves. "Splitting" a movement track is an opt-in process. Initially, all movement tracks are combined which means translation and rotation curves have the same number of keyframes and all keyframes exist at the same location in time. To split a movement track simply select "Split Translation and Rotation" from the context menu when right clicking on a movement track.

MoveTrackMenu.jpg

Once you split a movement track it will look like this

SplitMoveTrack.jpg

Each axis operates like a unique track so you can have any number of keyframes in them.

Translation and rotation components are grouped and can be collapsed when not in use. The vertical bars drawn adjacent to the translation and rotation groups represent a keyframe in one or more of the axes. Selecting a vertical bar will select all keyframes below it. This allows you to select multiple keyframes at once.

Note: Quaternion interpolation mode cannot be used when translation and rotation are separated.

Normalize Velocity

When working with Bezier curves it is often possible to create situations where objects traveling along a curve speed up or slow down depending on the shape and spacing of keyframes. The normalize velocity option modifies a movement track's translation curves in order to make objects traveling along it move at constant velocity. It is important to understand that constant velocity uses the 3D path that your movement track curves generate. When normalize velocity is used, the 2D curves for each axis of translation may change shape but the 3D path that it generates should not change from the original path.

Normalize velocity does not force a curve into constant velocity after the menu option is selected. It simply does a one time adjustment by examining the original curves and modifying them to maintain constant velocity. Any subsequent changes to the curve may cause it to no longer have constant velocity.

Notes:

  • Normalize velocity is only available on movement tracks which have translation and rotation separated (see above).
  • It is possible to normalize velocity on segments of a curve rather than the full interval. When this happens the normalize velocity routine adds a keyframe right before and right after the section being normalized. This is done so that the parts of the curve not being normalized remain intact. You may notice "jerky" movements during playback when an object traveling along the curve transitions to and from the normalized velocity section. To fix this you will have to manually adjust the keyframes before and after the normalized segment.

Particle Replay Track


The Particle Replay track allows you to create and play back pre-recorded particle simulations. This is especially useful when you want the particle to behave the same way in all shots. When you add a new key to the Particle Replay track, you are essentially adding a new clip to record to. For each clip, a bar is displayed on the timeline showing the duration of the clip.

replay_bar.jpg

When selected, you have the ability to adjust the starting point and duration of the clip using the handles on either end of the clip's bar in the timeline. Left-clicking and dragging the mouse on either handle will adjust the duration of the clip by moving that handle. To move the clip without adjusting its duration, Ctrl + Click and drag on the key itself.

replay_handles.jpg

You can also adjust the starting position and duration of the clip as well as change ID of the clip by right-clicking on the clip's bar in the timeline and choosing the appropriate option from the menu.

replay_menu.jpg

To begin recording the particle system(s), right-click on the track and choose Start Recording Particles from the context menu.

replay_start.jpg

When recording is active, the clip bars will be highlighted in the timeline.

replay_start_bar.jpg

Press the replay_play.jpg button in the toolbar to begin playback. The track will record the particles during play back when recording is enabled. Once recording is finished, right-click the track again and choose Stop Recording Particles.

replay_stop.jpg

Now, when you press the replay_play.jpg button the particle system(s) should play back from the recorded clips and you can scrub through the timeline to move forward and backward through the clips to inspect the recording.

Toggle Track


The Toggle track gives Matinee a mechanism for toggling Emitter actors on a off at particular points in the sequence. When you place a keyframe on a Toggle Track, you will be presented with the following dialog:

PSysToggle_Key.jpg

The options are:

  • Trigger - A one-shot activation of the particle system.
  • On - Turns the particle system on.
  • Off - Turns the particle system off.

The track display will show a green bar when an emitter is toggled on to make it easy to identify the state of the actor. This can be seen below for a Toggle track that turns the emitter on and back off again.

PSysToggle_Track.jpg

Properties

  • Activate System Each Update - If true, the track will call ActivateSystem on the emitter each update (old 'incorrect' behavior). If false, the ParticleSystem will only be activated if it was previously inactive.
  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • Fire Events When Backwards - If true, events for this track will be fired when the Matinee is playing in reverse.
  • Fire Events When Forwards - If true, events for this track will be fired when the Matinee is playing forwards.
  • Fire Events When Jumping Forward - If true, allows all of the events in the track to be fired even if the Matinee is skipped.

Color Property Track


The Color Property Track is used to control a byte-based Color variable in the attached actor. An example of such a proeprty would be the LightColor variable in light actors.

Properties

  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • Curve Tension - Controls how 'sharp' the corners in the animation curve are, when not manually adjusting keyframe tangents.
  • Property Name - Read-only variable indicating the name of the property in the connected actor which this track will modify over time.

Sound Track


The Sound track is used to play audio from SoundCues during a Matinee sequence. When placing a new key, the SoundCue currently selected in the Content Browser will used. Keys for the Sound track appear similar to those of the AnimControl track. You will see a bar with the name of the SoundCue that stretches for the duration of the SoundCue.

Properties

  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • Continue Sound On Matinee End - If true, the sounds being played on this track will not be cut off if their duration continues beyond the end of the Matinee sequence. They will continue to play until the sound ends.
  • Curve Tension - Controls how 'sharp' the corners in the animation curve are, when not manually adjusting keyframe tangents.
  • Play On Reverse - If true, the sounds being played on this track will only play when the Matinee sequence is played in reverse. They will not play when the sequence is playing forwards. An example of using this feature would be to have different opening and closing sounds for movers.
  • Suppress Subtitles - If true, any subtitles associated with the sounds being played by this track will not be displayed.

Vector Material Param Track


The Vector Material Param track is used to modify Vector Parameters within materials during runtime. The track takes a list of materials and modifies the value of the given parameter in those materials.

Properties

  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • Curve Tension - Controls how 'sharp' the corners in the animation curve are, when not manually adjusting keyframe tangents.
  • Materials - List of materials whose parameters will be modified and references to those materiasl that need to be given MaterialInstanceConstants in the level, compiled at save time.
  • Param Name - Name of the parameter in the materials to modify.

Vector Property Track


The Vector Property Track allows you to modify the value of a Vector property of an Actor over time, such as DrawScale3D for a StaticMesh Actor. When you create the Track it will bring up a combo box showing all modifiable properties of that Group's Actor. Select the one you want and then add/modify keyframes in the same way as you would for a Movement Track. You can also use the CurveEditor? to adjust the values of the parameter over time.

Properties

  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • Curve Tension - Controls how 'sharp' the corners in the animation curve are, when not manually adjusting keyframe tangents.
  • Property Name - Read-only variable indicating the name of the property in the connected actor which this track will modify over time.

Visibility Track


The Visibility track is used to control whether an actor is visible or not (by way of the bHidden property). When adding a new key for this track, you are presented with a dialog with options to Show, Hide, and Toggle the associated actor.

visibilitymenu.jpg

The track display will show a green bar when the actor is set to visible and later set not visible again to make it easy to identify the state of the actor. This can be seen below for a Visibility track that shows the actor ~1.0 seconds and hides it at ~2.0 seconds.

visibilitytrack.jpg

Keys set to toggle the visibility of the actor are displayed with a small red bar to denote tham as toggle keys.

visibilitytoggle.jpg

Properties

  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • Curve Tension - Controls how 'sharp' the corners in the animation curve are, when not manually adjusting keyframe tangents.
  • Property Name - Read-only variable indicating the name of the property in the connected actor which this track will modify over time.

AI Group


AI Group is designed to be used by in-game spawned AI(Controller or Pawn). This is to create seamless experience between cinematic and in-game.

Using run-time spawned actor creates multiple issues which includes preview in editor and how to handle transition between cinematic and ingame.

Since you don't have spawned character in editor and as a way you mark for your AI start up position, we use Stage Mark Group.

When you create AI group, it will create Stage Mark group for you, and you need to connect an actor to Stage Mark Group.

This actor's location/rotation will be the point of where the spawned actor or preview actor will locate and face.

AIMatinee.jpg

Second step to this is to select Preview Pawn Class. By default, it will be the class that's specified in DefaultEditor.ini file.

AIGroupPreviewPawnClassName="MyGame.DefaultGamePawn"

There are more configurable information you need to set up.

AIGroupPreviewAnimTreeName="EditorMeshes.PreviewTree"

DefaultAnimSlotName="Custom_FullBody"

AIGroupPreviewAnimTreeName is the preview tree in editor if preview pawn does not have AnimTreeTemplate and DefaultAnimSlot is the name of slot node for AnimControlTrack.

Other than DefaultAnimSlotName, it is all preview information. During run-time, we don't change AnimTree but use current AnimTree of the spawned actor with the slot node that its NodeName is DefaultSlotName.

So you need to make sure the slot node you specify above exists in the AnimTree as well as preview AnimTree.

Once this set up is done, you should be able to preview everything fine with the Pawn you select.

Preview does not change ingame actor. During run time, it will use the actor that's connected to the variable of the group in Matinee. Please make sure that this is either Pawn or Controller class.

One last thing to note is that if AIs in game decided to do something else during the play, there is nothing blocking them from doing that in Matinee code.

Matinee code handles AI exactly same as SkeletalMeshActor. So you'd like to make sure your AI does not try to do anything else during this time of period. If that's the case, you'll see race condition happening between Matinee and in-game.

event MAT_BeginAIGroup(vector StartLoc, rotator StartRot);

event MAT_FinishAIGroup();

Use these event to handle AI's behavior.

The Director Group


The Director Group is a special type of group that does not work on an arbitrary Actor in the scene like a normal Actor, but implicitly works with the `Player'. It is used when you want your sequence to be a cinematic, and you want to take control of the players view.

You can add a Director Group to your Matinee sequence in the same way as a regular Group, but choose `Add New Director Group' instead. The Director Group header is a different color from a regular Group header to make it easy to find.

There are several Track types that can only be added to a Director Group.

Director Track

The Director Track allows you to attach the players view to different Actors as the sequence proceeds. When you add a new keyframe to the Director track, a combo box will allow you to choose which Group to assign the view to at that point. Colored bars on the Director track allow you to see which Group the camera is viewing through at each point in the sequence - the color corresponds to the editor Group color of each group. If you want to return the camera to the player, simply add a cut back to the Director Group itself. Think if the Director Group as a special group relating to the 'player'. The view will automatically return to the player at the end of the sequence otherwise.

dir_track.jpg

Shots

Director tracks are broken up into named shots, just as you would encounter in standard film-making. Each key denotes a new shot and the shot lasts for the duration of that key.

shot_label.jpg

Shot names can be displayed in both the editor viewport when previewing the Matinee and in-game while the Matinee is playing.

Viewport Preview:

shot_previewdisplay.jpg

In-Game Playback:

shot_gamedisplay.jpg

Note: Display of shot names in-game during Matinee playback requires bShowDirectorInfoHUD=true in the *Game.ini file and the gametype to support displaying Kismet messages (via calling DisplayKismetMessages() in the draw loop).

By default, shots are numbered according to their position in the timeline. Adding a new key between two existing keys will cause the shot associated with the new key to be numbered between the existing shots.

Existing keys:

shot_before.jpg

After adding new key:

shot_after.jpg

Shots can be renamed through the context menu.

  1. The existing shot name:
    shot_label.jpg
  2. Select the key the shot is associated with, right-click on it, and choose Rename in the context menu.
    track_menu.jpg
  3. Enter a new number for the shot in the Set Camera Shot Number dialog:
    shot_dialog.jpg
  4. The shot is now renamed:
    shot_renamed.jpg

Fade Track

To control fading of the scene to a particular color, you can use a Fade Track. This Track works similarly to the Float Property Track, but you must use the Curve Editor to control the amount of fading over time. When the Fade amount is 0.0, there is no fading, and when its 1.0 the scene is completely faded out.

Slomo Track

One special effect you can apply to a cinematic is to slow down the game speed. This track again works similarly to the Float Property track, and you use the Curve Editor to modify the slow-motion over time. A Slomo factor of 1.0 will use the default game speed, a lower number will reduce game speed and a higher number will speed up the game.

Slomo affects all game actions, physics, particles etc. as well the speed the sequence itself proceeds.

Audio Master Track

The Audio Master track gives control over the overall volume and pitch of the game's audio. When an Audio Master track is added to the Director Group, it has one default key at the beginning of the sequence whose InterpMode is Linear. Adding new keys allows you to modify the volume and/or pitch over the course of the sequence.

Properties

  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • Curve Tension - Controls how 'sharp' the corners in the animation curve are, when not manually adjusting keyframe tangents.

Color Scale Track

The Color Scale track modifies the color scale of the rendered scene output, allowing you to tint the scene.

Properties

  • Active Condition - Sets when the track should be enabled; always, when gore is enabled, or when gore is disabled.
  • Curve Tension - Controls how 'sharp' the corners in the animation curve are, when not manually adjusting keyframe tangents.