Index Unit Notes

About Macromedia Director

These notes are a brief introduction to Macromedia Director. They constitute a single web page to make it easy for you to print a take-away copy. They are designed to support practical work associated with the Multimedia unit. Further details may be found in the Director books which are held in the laboratory. (Please do not remove these books from the laboratory.)

There are practical exercises towards the end of these notes. Aim to complete this before the end of the lecture course.

These notes have been prepared by:

Bill Martin
The Productive Play Company
3 Mount Stuart Square
for the University of Bath, with updates by Phil Willis, University of Bath.

1. Introduction

Macromedia Director is one of the most widely used authoring tools in the multimedia industry today. Originally developed for the Macintosh it is also available for PCs running Windows.

Director provides an environment for developing multimedia software. This allows objects such as text, graphics and sounds to be manipulated using drag and drop. It has a scripting language called Lingo which can be used for programming interactivity. Programs can be run and tested without leaving the environment. Executable files called projectors which run independently of Director can be created, normally as the end point of development.

This workshop will attempt to give you a basic grounding in the use of Director version 4.0 for Windows through a series of short exercises. Most of the material covered is also relevant for the Mac version of the software.

In addition, Director usually comes with its own set of examples which are covered in the manuals. A few third party books on Director and Lingo exist but perhaps not as many as you might expect. Further sources of information are the various user groups such as Direct-L which discuss the use of Director. Macromedia's web pages can be a useful starting point in locating these, the URL is

2. The Director Environment

Director is based very loosely modelled on the making of an animated movie. This has given rise to the naming of some of its elements. A movie is the term used to describe a piece of work produced with Director and is stored as a .DIR file.

The Director environment consists of a number of windows within a main application window. The main window contains the menus which provide control over the whole application. Menu items often have keyboard shortcuts which can speed up your operation of Director so it is worth learning to use these from the outset. The most useful are probably those for copying and pasting (Ctrl+C and Ctrl+V), operations which can be performed on most movie elements.

There is a Help menu which has extensive on-line help. It is an important source of information especially if you do not have manuals to hand.

2.1 The Stage

The stage occupies the main application window of Director. This is where your movie will be displayed. When the movie is not running, the contents of an individual frame are shown on the stage. In this state the objects can be selected and moved about with the mouse. (If you change an object in a single frame, the change will not automatically appear in other frames. Direct interaction with objects on the stage will only change the object for the single frame. However, you can use the Score to produce an effect across several frames.) Objects can also be scaled using control points on the selection box. The arrow keys can be used for fine positioning of items that are selected.

The size of the stage can be defined and this will normally be a standard screen size such as 640 x 480 pixels. This should be decided at the start and defined in the Preferences command.

2.2 The Cast

The cast is a database of objects used in your multimedia movie. The cast window is made up of a series of cells containing these objects, otherwise called cast members. Each cell displays a thumbnail picture of its contents and can be double-clicked to edit the cast member. The cast can be rearranged simply by dragging cells to other positions in the cast window and any changes are reflected in the score. A cast member can be dragged directly onto the stage to add an instance of it to the current frame. Alternatively, it can be dragged to a position in the score to add it anywhere in the movie. Several instances of a single cast member can be created if desired.

The cells in the cast window are numbered which means that every cast member has a unique identifier. Cast members can optionally be named for identification but care should be taken as it is possible to give the same name to multiple cast members. Names are useful for referring to cast members as it can avoid having to change number references in scripts if the cast is rearranged.

The available cast member types include the following:

  • Text
  • Bitmaps
  • Sounds
  • Film loops
  • Digital video
  • Scripts
  • Buttons
  • Shape objects
  • Palettes
The type of individual cast members is indicated with an icon in the bottom right of the thumbnail.

Cast members are either embedded as part of the movie or are links to external files such as bitmaps and sounds. Linked cast members can be useful for managing large objects to limit the size of the movie. Use the Import command to bring bitmaps and sounds in as cast members.

Scripts can be attached to cast members in order to define their behaviour in response to events such as a mouse click. Where scripts are attached, an 'L' symbol appears in the lower left of the thumbnail.

2.3 The Score

The score is a representation of a whole movie in notation. An animated movie can be constructed and edited in the score window. Through the score window, control is exerted over the various elements making up the movie. It is the central tool for making your own movies.

The score window is made up of an array of cells. The columns represent the sequence of frames in the movie and the rows are mostly animation channels called sprite channels, with additional channel for frame scripts and five effects channels. A sprite is defined as a visual cast member instance at a point in time; in other words a single occupied cell in a sprite channel. The frame currently on stage is indicated by the playback head at the top of the score.

There is a maximum of 48 sprite channels allowed which means you can have up to 48 visual objects in each frame. This may seem like a lot but for some applications it can be quite a restriction. These channels represent layers in the composition, lower sprite numbers are shown underneath overlapping higher sprite numbers.

Two sound channels are available for inserting sounds into the movie. If both channels contain sounds at the same time then Director will mix them together. The other effects channels control the tempo, allow palette changes and provide transitions such as fades, wipes, and so on.

All channels can be turned on and off while working on a movie by clicking the diamond buttons next to the channel numbers. This is useful for focusing on specific parts of the movie being developed.

The notation appearing in cells in the score can be changed from the default 'Cast' with the display pop-up menu. The choices are:

  • Ink (the ink effect applied to the sprite)
  • Blend
  • Cast (part of the cast member identifier)
  • Motion (the direction of the sprite's movement or static)
  • Script (the associated script if any)
  • Extended (all of the above in a large cell)
Cells can be selected in a variety of ways. For example clicking and dragging selects a block of cells while double-clicking an occupied cell selects all adjacent cells with the same cast member. Whole rows or columns can be selected in spreadsheet style.

Once selected a hand cursor appears for dragging the cells to another part of the score or to create a film loop by dragging to a cast-member cell in the cast window. Selections can be cut, copied or pasted in the normal way. Shuffle buttons enable selected sprites to be moved up and down layers.

The script pop-up menu has a list of score scripts which can be attached to sprites which are selected. A score script takes precedence over a cast member script of the sprite. The script preview button calls up the script window to display the associated script for the sprite. This window enables the Lingo script to be entered or edited.

There is an ink pop-up menu which defines a whole host of ink effects which can be applied to sprites. The most common of these are copy, matte and background transparent.

Below this in the score window are three check boxes for applying trails, moveable and editable properties to sprites. 'Editable' applies only to text sprites.

A powerful feature in the score is its recording ability. Step recording lets you record an animation frame by frame. The sprite channels which are affected have a red light indicator by their number. As you step through the frames you can move the sprites on the stage to their new positions to define the animation. Real time recording lets you define the animation for one channel at a time but you move the sprite on stage as the frames advance at the playback speed, literally in real time. A white indicator light shows which sprite is in this mode. Having said all that, it is difficult to get the degree of accuracy you may require. Powerful as it is, this feature is not necessarily that useful for real work.

Named markers can be attached to frames simply to annotate them or, more usefully, to provide frame identifiers for branching to different parts of the movie when programming for interactivity using Lingo.

2.4 The Control Panel

The control panel has some familiar controls which apply to the movie such as play, stop, rewind, frame step forward and frame step back. In addition, there is a mute button to cut out sound, a loop button to restart playing when the end is reached, and a 'Selected frames only' button to restrict play to the selected frames, indicated by a green bar above them. A colour chip allows the stage colour to be set.

There is a frame counter and an intended tempo display for the movie. The actual tempo is shown in a further display which gives you a choice of viewing the duration for the previous frame or the total elapsed time.

2.5 Other Windows

The windows described in the previous sections are probably the ones you will be using most. However, there are a few more windows worthy of mention.

The paint window provides a reasonably good means of editing bitmaps within Director. The paint tools should be fairly self explanatory apart from maybe the registration tool. This defines a point which is used when aligning the bitmap with other bitmaps forming an animation sequence. An example would be objects which rotate around a common point such as the hands of a clock. The registration point would be set at the rotation point of each to make their alignment easy. The default registration point is the centre of the bitmap.

Text in the paint window becomes part of a bitmap, unlike the text cast members which use dynamic font loading. The text window allows you to change the attributes of the text including font, size and shadows from the Text menu. Colour is changed using the colour chip on the tools window.

The tools window gives you access to elementary objects, such as lines and shapes, which are more efficient than using the paint window to create them. It also provides tools for creating buttons and checkboxes as well as text objects directly to the stage.

Foreground and background colour chips enable these colours to be set for any of the items in the tools palette.

The colour palettes window lets you choose a palette or edit one.

You can play and edit digital video, such as .AVI files, in the digital video window.

The message window allows you to execute some Lingo commands directly and to see the results in the window. It is also used for displaying the result of 'put' statements, a Lingo command like 'print' when used with strings. A trace button forces all the Lingo which is executed to be displayed when a movie is run. This is used for debugging purposes. A proper debugging tool and watch window have been introduced in version 5.0 of Director.