DIRECT ACTION 2.01 Direct Action 2.01 Copyright (c) 1990 by M. Peter Engelbrite All Rights Reserved -INTRODUCTION Direct Action is a tool for creating animations on the Amiga computer. It uses a simple cell animation technique. The animation is edited one Frame at a time, as a professional cartoonist would. There are no 3-D or ray tracing or filled polygon functions, just straight-forward bit blitting. Each Frame (in time) contains up to 100 Objects, and each Object can be one of up to 500 Shapes. Direct Action has Sound capability and can fade to black or white. There are no complex data structures to deal with, you just place your Objects on your Background Scenes. Comparing Direct Action to other animators, Direct Action is like a text editor as opposed to a programming language. In a text editor, you are moving characters around on a page, and the power comes from the editing tools. In a programming language, you create complicated data and program structures to generate the result. This is not an "anim" type animator. Anim animators store the bit-by-bit difference between each Frame and during playback, continually modify the picture (bit-by-bit). This technique is powerful for short animations in that you can have very subtle differences between Frames, but typically is limited to about 20 seconds (on a computer with lots of memory). In Direct Action, you can have animations of up to 25 MINUTES long. This is because the animation is stored as positions of Shapes. Once you have your Shapes defined, you can put a lot of motion on the screen with very little memory usage. Each Frame has a Background Scene and can be faded to black or white. When the animation is played, the Frames are shown in sequence (at 10 per second), with the Objects blitted in real time. All images are created in the paint program of your choice (it must store images in IFF, ILBM format). The Background Scene files are low-res overscan (352 x 240, 32 color) and the Shape Page files must be low-res (320x 200, 32 color). Direct Action has an Edit Shapes mode to "Frame" or cut the Objects out of your Object artwork. Direct Action keeps the Objects in their original 320x200 format, and retains the location of their cut out "Frames" rather than cutting out "paintbrushes" and saving them separately. In fact, Direct Action does not save any actual graphics data files, it just loads them from disk as needed. This can cause some inconvenient when moving finished animations around, but it is much faster for re-working your art, because you can leave Direct Action, run your paint program, then pull the new artwork in and continue with your animating. Direct Action can play 4-channel sounds using raw data digitized sound files or uncompressed 8svx iff sound files. These sounds are represented visually by an icon that you can move around on the screen to change the pitch and volume. -SYSTEM REQUIREMENTS Direct Action requires an Amiga (500/1000/2000/2500) with at least 1 Meg of RAM. It will make use of the "Fat Agnus" chip if you have it. The animation called "Wheat" on this disk is fairly large, and some people may have difficulty playing it on systems with tight RAM. -WHAT IS CHARITY-WARE? This software is a free gift to you, and may not be sold except for a nominal copy fee. A donation of $20 is requested if you end up actually using it. Do NOT send your donation to me! Make your check out to "Food for the Hungry" and send it to: Food for the Hungry, P.O.Box E Scottsdale Az 85252 (1-800-2-HUNGER). Your donation is tax deductable! Food for the Hungry is a nonprofit Christian relief and development agency that offers disaster relief and self-help assistance to the hungry on a person- to-person basis at the lowest possible overhead. -TERMINOLOGY Each frame (in time) of animation is called a "Frame". On the Frame there may be several "Objects". Each Object has a "Shape" assigned to it. If an Object represents a sound it is called a "Sound Object". The degree of extra lightness or darkness added to the normal colors of a Frame is called the "Fade". The IFF artwork for your backgrounds is called a "Background scene" file. The IFF artwork that you keep your shapes in is called a "Shapes page" file. -PLAYING AN ANIMATION The easiest way to play an animation is to double-click on its icon (this assumes that the file "DirectAction" exists on disk "DA:"). Direct Action can be run from the CLI or from Workbench, and animations can be run at load time by single clicking on an animation, then double clicking on the Direct Action icon while holding down the shift key. It can be run from CLI by giving the name of the animation as a command line argument. If you wish to stop an animation and return to editing it, press the Esc key. When you first run Direct Action (without an animation) you will be presented with the choice of "Load", "Create New", and "Quit". These functions will then be available from the Disk Functions menu. -INSTALLING ON HARD DISK Just copy Direct Action to a drawer on your hard disk (it is not copy protected). You should add an assign command to your startup-sequence to assign DA: to your drawer. This allows any animations to play by double-clicking on their icons. -WORKBENCH 1.2 If you are using Workbench version 1.2, you should first ask yourself the question: "Why did'nt I upgrade to 1.3?". If you have a good answer, then you can use Direct Action with Workbench 1.2 by doing the following: Go to CLI and type "assign T: RAM:" and press return. -CREATING A NEW ANIMATION The Background Scene files have the same name as your animation file, but with ".bakn" added to them (where the n in .bakn is a number, starting at 1). Your Shape Page files end in ".shpn" and your sound files end with ".sndn". All of these files must be in the same directory as your animation. The Background Scene artwork must be 32 color overscan (352 x 240), and the Shape Page artwork is 32 color, non-overscan (320 x 200). I would suggest that you give your animation the same name as the directory it is in, and have only one animation per directory. This makes it much easier to move and copy your animation with the artwork along with it. For example, if you have an animation named Oink, and you wanted 2 backgrounds, 3 Shape files, and 4 sounds, then you would have the following the files in your directory (named Oink): Oink.bak1 Oink.bak2 Oink.shp1 Oink.shp2 Oink.shp3 Oink.snd1 Oink.snd2 Oink.snd3 Oink.snd4 Then run Direct Action and perform the "Load" operation. You give it the name / directory of your new animation (Oink), and it will load in your artwork without any animation defined. Enter your animation and save it back to disk. When you save your animation, it will create the files Oink and Oink.info. The default tool type for your animation is "DA:DirectAction". The tool type means that when you double click on the icon for your animation, Workbench will load DirectAction and give your animation to it to play. On subsequent "saves", the .info file is not re-written, so you can change the default tool (use the "Info" command from Workbench). If later on you wish to add more graphics or sound, just copy them to your directory and name them appropriately. When you re-load your animation, the new data will load in. When adding your graphics or sound files, do not skip any numbers. Direct Action has a utility (Create New) to perform the process described above from within Direct Action. Use whichever seems easiest to you. To create a new animation, you should first create a directory for it. Then create the desired graphics files. The artwork does not need to be in the new directory. Then run Direct Action and Select "Create New" and enter the full name of your directory in the directory field (see the section on using the file requester). Enter the name of your new animation in the file name field (it is usually best if they have the same name). Click on the "New File" field. Now enter the name and directory of your first Background file and click on the "Background 1" field. It should now have a "Background 2" field and a "Shapes" field. If you have no more backgrounds, click on the "Shapes" field. Now enter the name and directory of your first Shapes file and click on "Shapes 1". If you have no more Shapes files, click on the "Sounds" field. Now enter the name and directory of your first Sounds file (if any) and click on "Sounds 1". When you are done, click on "Done". This copies your artwork and sound data files into one name and directories them correctly. Now you can define your Shapes and Action and save them to disk as an animation. -USING THE FILE REQUESTER The file requester for Direct Action is a little different from most Amiga file requesters, but it is quite easy to to use. It is composed of several boxes and lines that can be selected by clicking on them. The top line is for the name of the file. The next line is for the name of the directory your file is in. This may include the disk drive name and any nested directory names. In Amiga terms, the term "directory" is the same as "drawer". If you enter the full name (including disk and directory) on the file name line, it will clip off the disk/directory and put it in directory line. This is nice if you already know exactly where your file is and don't want to bother searching directories for it. On the next line are the following (from left to right): Down and Up scroll arrows for scrolling the directory listing The command that you are performing (such as Load or Save) - click here to perform the action. Cancel (this is slightly different in "Create New"). DA: and DF1 these load the directories from disks DA: and DF1:. Dir loads the directory specified on the directory line. If you click on any of the lines in the directory listing that are surrounded by parenthesis (), it will take you to that sub-directory (it also copies that name to the file name line - this is because they should normally have the same name to avoid confusion). If you click on the line with (-Parent-), it will take you to the parent directory. If you click on any of the lines without the parenthesis, then it will copy it to the file name line. .info files do not appear in the directory listing. You can edit the line with the <- (BackSpace) key and Alt-X (erase entire line). This is true for all text entry in Direct Action. -EDIT ACTION You edit your animation by using the toolbox (or keyboard) to create, delete, and change Objects within a Frame. You move your Objects around by clicking on them to select them, and then dragging them around with the mouse. By clicking I mean a single click with the left mouse button. The right mouse button is not used in Direct Action. Once you have selected an Object, you can move it by clicking and holding onto that Object, or by clicking elsewhere on the Background (but not on another Object) and dragging the mouse. If you hold the shift key down while clicking on an Object, you can select several Objects at once. The multiple select remains in effect until you click on an Object (without the shift key). You can Drag, Carry, Clone, Near, Distant, and Delete multiple Objects. You can get into Edit Action mode by pressing the A key or the Esc key. -Edit Buffers Direct Action uses temporary disk files in certain edit operations, which it then deletes when you exit the program. These commands are: Cut, Copy, Paste, Merge, Reverse Paste, Set Buffer, and Swap. The edit files are in the T: directory. In Workbench 1.3, T: is assigned to RAM:t. If you are running short of system memory, you may wish to re-assign it to an actual disk directory (especially if you have a hard disk). -Edit Action Toolbox This chart shows the meaning of the icons in the toolbox. In the actual toolbox, the rectangle represents a Frame, the dot represents an Object, the upside down "L" Shape represents the Shape, the * (starburst) represents "nothing", the flashlight represents the Fade, and the rectangle with the tiny mountain scene represents the Scene. Any keyboard equivalents are shown after the name of the command, and upper/lower case is not generally important. You should hear a small "beep" whenever you execute any Direct Action commands. -Next Frame : ] Adds one to the current Frame number if the current Frame is not the last one. This allows you to single step through your animation. If you hold down the shift key (makeing "}"), it will skip forward 10 Frames. -Clone Frame : Return Duplicates the current Frame (including all Objects, Sounds, the Fade, and the scene) and selects the next (newly created Frame). If it was on Frame 5, then this command would insert a duplicate of Frame 5 between Frame 5 and Frame 6, renumbering all following Frames (including what was Frame 6), then it advances to the cloned Frame (now numbered 6). -Next Object : + (=) Selects the next Object after the current Object (if there is any). The current Object is indicated by flashing. The lower numbered Object is "behind" or farther away from the viewer than the higher numbered Object. -Clone Object : C Duplicates the current Object and selects the next (newly created Object). If it was on Object 5, then this command would insert a dupicate of Object 5 between Object 5 and Object 6, renumbering all following Objects, then selects the cloned Object (now numbered 6). -Carry Object : Space This duplicates the currently selected Object, goes to the next Frame, and inserts that Object there (selecting the newly created Object). This command is invaluable in "laying down" a sequence of animation into an already existing animation. -Distant : D Swaps the currently selected Object with the next lower numbered Object, and "stays with" the same Object. This has the effect of moving an Object farther away or more distant. Note that this is relatively meaningless if the Objects do not overlap, because distance just refers to which Object is drawn on the screen first and does not affect the size or position of the Object. -Next Shape : > (.) This changes the Shape of the currently selected Object. If the current Object had a Shape of number 24, then after clicking "Next Shape", it would have a Shape of 25. -Previous Frame : [ Subtracts one from the current Frame number if the current Frame is not 1. This allows you to single step backwards through your animation. If you hold down the shift key (makeing "{"), it will skip back 10 Frames. -Delete Frame : K Deletes the current Frame, renumbering the following Frames. The current Frame number does not change, so what was the following Frame is now current. -Previous Object : - Selects the last Object before the current Object (if there is any). The current Object is indicated by flashing. The lower numbered Object is "behind" or farther away from the viewer than the higher numbered Object. -Delete Object : Del Deletes the currently selected Object, renumbering the following Objects. The selected Object number does not change, so what was the following Object is now selected. -Create Object : F5 Temporarily goes to the Edit Shapes Mode, allowing you to select a Shape for your new Object (by clicking on a Shape), and returns to Edit Action. The new Object is now selected and is placed at the location of the previously selected Object or in the middle of the screen if the current Frame was empty. -Near : N Swaps the currently selected Object with the next higher numbered Object, and "stays with" the same Object. This has the effect of moving an Object nearer. Note that this is relatively meaningless if the Objects do not overlap, because Distance just refers to which Object is drawn on the screen first and does not affect the size or postion of the Object. -Previous Shape : < (,) This changes the Shape of the currently selected Object. If the current Object had a Shape of number 24, then after clicking on "Previous Shape", it would have a Shape of 23. -Mark Range : F6 -Copy Range : F7 -Cut Range : F8 -Paste Range : F9 This is similar to the editing features of many word processors. The Mark command marks the current Frame as the beginning of a Range. Move to the end of a Range and click on Cut or Copy. The Range (including the "Marked" and the current Frame) is copied to a temporary buffer. Paste will insert the saved Range in front of the current Frame. You can select one of 9 buffers to use for these operations by pressing keypad 1 through 9 before performing the operation. That buffer remains selected untill you press another digit on the keypad. If you hold down the shift key while clicking Cut/Copy/Paste (or pressing their function keys), then it will prompt you for a file name to use instead of one of the buffers. Note that this does not "set" the buffer to that name for future operations, but used for this one operation only. This allows you to keep a library of Ranges on disk, but if you Clone a Shape or Delete a Shape in the Edit Shapes mode, then the old Ranges that you save to specific Files are invalid. This is not true of the 9 buffers - they are adjusted to the new Shapes. -Fade Up : 3 -Fade Down : 4 -Fade Off : \ This changes the entire color pallet by adding or subtracting a number from all the colors. It will not fade beyond white or black. Off resets this system to the "normal" colors from your paint program. You will notice that while editing, the Fade "turns on" for a brief time when you enter a Frame, then reverts to the neutral colors. This allows you edit a Frame that has been faded to black or white and still see what you are doing. Note that each Frame has its own Fade value, independent of neighboring Frames. -Enter Frame : F -First Frame : R -Final Frame : V This both displays the current Frame number and allows you to go directly to a specific number. Click on the number, and it allows you type in the new number (press return to complete entry). Click on the icon to the left of the number, and it goes to number 1. Click on the icon to the right of the number and it goes to the final (highest numbered) Frame. The keyboard equivalents are: F (for Frame), R (for first) is just above the F key, and V (for final) is just below F. -Enter Object : O -First Object : 9 -Final Object : L This both displays the current Object number and allows you to select a specific number. Click on the number, and it allows you type in the new number (press return to complete entry). Click on the icon to the left of the number, and it goes to number 1. Click on the icon to the right of the number and it goes to the final (highest numbered) Object. The keyboard equivelants are: O (for Object), 9 (for first) is just above the O key, and L (for final) is just below O. -Enter Shape : S -First Shape : W -Final Shape : X This both displays the current Shape number and allows you to change the current Object's Shape to a specific Shape. Click on the number, and it allows you type in the new number (press return to complete entry). Click on the icon to the left of the number, and it goes to number 1. Click on the icon to the right of the number and it goes to the final (highest numbered) Shape. The keyboard equivelants are: S (for Shape), W (for first) is just above the S key, and X (for final) is just below S. -Sound : * Creates a Sound Object. While in edit action mode, a Sound Object appears as a musical note within a box. The position of this Sound Object determines the pitch and volume as follows: left = low pitch, right = high pitch, up = loud, down = quiet. Use the Next Shape, Previous Shape, or Enter Shape to select which sound too played. The currently selected sound (if any) will play whenever you let UP the left mouse button, allowing you to drag the sound around and hear how it sounds. The sound icons do not appear while the animation is playing. See the paragraph on "Set Object" for mor informations about sounds. -Next Scene : F2 Changes the Scene to be used as the background for your animation. Next Scene goes to the next Scene, and after the last one goes back to the first (unlike all the other toolbox functions). The F1 key performs a Previous Scene function. -Disk Menu : / Goes to the Disk Functions command menu. These selections are described in the "Disk Menu" section. -Edits Menu : ' Goes to the Edits command menu. These selections are described in the "Edits Menu" section. -Miscellaneous Menu : ; Goes to the Special Effects command menu. These selections are described in the "Miscellaneous Menu" section (where else would it be?). -Play : P Plays the animation currently in memory and then stops. If you hold down the shift key any time during Play (or Continue, Loop, or Short Loop) then Direct Action will play only every 10th Frame. This allows a "Fast Forward". -Continue : F3 Continues playing animation from the current Frame. -Move Tools : J Moves the Action toolbox from one side of the screen to the other. -Edit Shapes : E Switches to Edit Shapes screen. -Cursor Keys These move the currently selected Object (or Objects if shift click is on) one pixel up / down / left / right. -DISK FUNCTIONS MENU -Load : F10 Replaces any existing animation with the specified animation on disk. Also loads any graphics files that are needed for the animation. Enter the directory / filename and click on "load". -Save : (no Keyboard Equivalent) Saves animation currently in memory to disk. It tells you the name of your animation and asks "OK" and "Cancel". If there is no .info file for that name, it creates a new one. The default tool for the animation data files is "DA:DirectAction". If you wish to make a duplicate of your animation, you should duplicate the entire drawer. -Information : Help Some information about Direct Action, along with the current file name, the number of the edit buffer currently in use, the amount of Action memory used, and the screen position of the currently selected Object. If the Object is a sound, then the volume and rate will be given instead of the screen position. See the section on Set Object for an explanation of volume and rate. -Visit : B This allows you to "visit" other programs (probably your paint program) without quitting Direct Action. It tries to put the Workbench screen to the back, so if a paint program is loaded, it will end up as the front screen. To return to Direct Action, get back to the Workbench screen and click in the window titled "Direct Action". -Add Shapes : (no Keyboard Equivelant) Merges the Shapes from another animation (on disk) with the Shapes of the animation you are editing. Note that it appends the new Shapes to the end of the existing ones. The Shape file will be numbered 1 after your last number .shp file. The animation that you are merging with does not need to have any background scene files, or action in it, just the animation file with the Shapes defined. If the animation (Shape file) that you are merging with has the ascii defined (see Tab command in Edit Shapes), then your animation will obtain that ascii definition (adjusted for the new shape numbering). -Create New : (no Keyboard Equivelant) This assembles all your artwork and sounds into a single directory, renaming them as needed. See the section on Creating a New Animation. -Refresh : Z It re-loads the current Background Scene (or Shapes Page if you are in Edit Shapes) from disk. This is useful after doing a visit to your paint program. -Quit : Q Exit Direct Action. -Cancel : (no Keyboard Equivelant) Quits this menu without doing anything. -EDITS MENU -Set Object : 2 If the Object is not a Sound, then it allows you to type in a new horizontal and vertical position for it. If it is a sound, then it allows you to enter the playback rate, volume, and repeat mode for the currently selected sound. If you enter return with no number, then it does not alter that particular value. The rate is the number of samples per second that you want it to play back. This is not precisely the pitch, because the sound data may have any number of samples per waveform. Rate corresponds to the horizontal position of the sound icon, and can be adjusted by moving it around on the screen as an Object. Left is lower rate, right is higher rate. The rate can range from 4419 Hz to 28409Hz. You may notice that when you examine the sound with the Information command, the rate given does not correspond quite exactly with what you typed in. This is because not all frequencies can be represented exactly. The volume is the loudness of the sound. The volume corresponds to the vertical position of the sound icon, and can be adjusted by moving it around on the screen as an Object. Up is louder and down is softer. The volume can range from 0 (off) to 64 (loudest). 64 is not all the way to the top and 0 is not all the way to the bottom. This is because the screen is 240 pixels high and we need only 65 steps for the volume control. In setting the repeat mode, 1-127 sets the number of times the Sound is to repeat before stopping. 'B' sets it as a Background Sound that repeats continuously. The Background Sound always occupies one channel, while the other sound channels are allocated on a "round-robin" basis. This means that you may have only one Background Sound, and up to 3 other Sounds playing at once. If you attempt to start more than these 3 (non-background) Sounds at once, then the new Sounds interrupt the old ones. A background sound can interrupt a previous one. If the volume of a Sound is set to silence (the Sound Object is at the very bottom of the screen), then that sound channel is actually turned off until it is re-activated by another Sound. The repeat mode defaults to a repeat of 1. -Undo : U Restores the current Frame to its original state that it was in when you first selected it. These commands "save" the state of the current Frame: Next Frame, Previous Frame, Clone Frame, Carry Object, Edit Action, Enter Frame, First Frame, Final Frame, Delete Frame, Merge, Paste, Cut, Reverse Paste, and Move Range. Since the Edit Action command saves the state of the Frame, it is a good idea to press A or Esc just before you do any heavy editing in a Frame. Also, since it remembers the state of only one Frame, it does not do much good to undo operations like Cut or Merge. -Merge : 6 This is similar to Paste except that it merges the stored range with your animation on a Frame by Frame basis. The Background Scenes in your animation are not altered by this operation. When it is finished, the Frame after the last frame of the merge will be the current one. For example: if you had cut 10 Frames of animation to the buffer, and you were currently on Frame 100, then after the merge, you would be on Frame 111. This feature is very useful for laying down a long sequence of repeating animation. It normally uses one of the edit buffers 1-9. If you hold down the shift key when you select the Merge command then it will prompt you for a file name. It merges the animation from the buffer "in front of" the animation currently in memory (this relates to the "Distance": see the commands Near and Distant). -Reverse Paste : 5 This inserts the saved range just before the current Frame, but it is inserted in reverse order. It does not reverse the Near / Distant drawing order of the Objects within the Frames. It does not change the current Frame number (but that Frame will have new data in it now). It normally uses one of the edit buffers 1-9. If you hold down the shift key when you select the Reverse Paste command then it will prompt you for a file name. -Relocate : 7 This moves all objects (except Sound Objects) in the currently marked range (all Frames between the last Frame that was marked with the Mark Range command and the current Frame) a specified horizontal and vertical distance. When it asks for these distances, enter positive numbers for right, negative for left, positive for up, negative for down. All numbers are in screen pixels. -Motion : 1 This is similar to Relocate in that it moves the Objects within the specified Range, except that instead of moving everything a specified distance, it moves it a different amount for each frame. This gives the illusion of motion when played back. You give the speed of motion where 100 represents one pixel per Frame. When it asks for these speeds, enter positive numbers for right, negative for left, positive for up, negative for down. For instance: if you wanted motion toward the lower right at 2 1/2 pixels per Frame (25 pixels per second), you would enter 250 for horizontal speed and -250 for vertical speed. -Set Buffer : Key Pad 1,2,3,4,5,6,7,8,9 Sets the buffer number for Copy, Cut, Paste, Merge, and Reverse Paste. Set the buffer number first then execute the command. Use the Information command to determine the current buffer number. These buffers are save in the T: directory as files. The default (when you first run Direct Action) buffer number is 1. The term "Key Pad" refers to the numeric keypad on the right hand side of the keyboard. -Clear Buffs : Key Pad - Erases all 9 edit buffers. You may want to do this if you find that you are running out of RAM or you are about to do some editing of your shape definitions. The delete shape and clone shape commands in Edit Shapes mode cause Direct Action to renumber the Action memory, including any of the edit buffers that have been used. This may take a while. -Swap : Key Pad 0 Swaps the entire Action memory with a buffer. This allows you to have an "edit area" to perform intermediate operations without disturbing your main animation. -Cancel : (no Keyboard Equivelant) Quits this menu without doing anything. -MISCELLANEOUS MENU -Search : Y Starts from the current object and searches for an Object whose Shape matches the specified Shape number. If it finds a match, it will go to that Frame and Select that Object. Otherwise, the currently selected Object stays selected. If you wish to search for a sound, start the shape number with the letter "S". If the currently selected Object "matches", then it will stay selected. -Search Again : ` Searches for an Object whose Shape matches the last specified Shape number from the "Search" command. However, it skips the current Object before starting the search. If it doesn't find a match, then the currently selected Object stays selected. -Short Loop : BackSpace Backs up a short distance (in Frames) from the current Frame, and plays the animation (repeatedly) to a short distance after the current Frame. This is very useful in adjusting specific parts of your animation. -Loop : 0 This is the same as the Play command, except that it starts over when it comes to the end of the animation. -Interlace On/Off : J This sets the screen interlace mode. Note that this command does not change the resolution of the screen, just the screen mode. You may want Interlace to be on when recording your animation on a VCR. -Text : T Place the mouse pointer where you would like your text to start, and press the t key. Direct Action will ask you for your text, and when you press return, it converts it to Objects (one for each letter) and leaves them all selected. See the Set Ascii command in the Edit Shapes section for information on how to set up your character set. -Single Step : H Starts single step mode. This is the same as Play, but will advance one frame per press of the left mouse button or joystick fire button (in either mouse port). When you begin this mode, it will ask for a delay value in 1/10 second intervals. Enter 0 or press return if you don't want any. This delay might be useful if you are connecting the Amiga to a single frame VCR through the mouse/joystick port. -Set Macro : M This starts the recording of the Edit macro. It will record all mouse and keyboard operations until the M key is pressed again. You may then execute those operations again with the Execute Macro command. These commands are stored in the temporary file named t:DirectAction.macro . -Execute Macro : Keypad Enter This plays back the mouse/keyboard sequences recorded with the Set Macro command. This is the same command as in Edit Frames, and you may go back and forth between Frames and Shapes. -Repeat Macro : Keypad . This plays back the mouse/keyboard sequences recorded with the Set Macro command. It prompts you for the number of times that you would like the macro to be repeated. If you press Return with no repeat number, then it just goes on until it is stopped. Macro execution is stopped when a Search or Search Again command fails to find a match, or when a Next Frame or Previous Frame command comes to the "end" of the animation. The Repeat Macro command can also be stopped by pressing the left mouse button. -Goto Mark : G Changes the current Frame to the last Frame that was marked with the Mark Range command. -Cancel : (no Keyboard Equivelant) Quits this menu without doing anything. -EDIT SHAPES You define a Shape with the Add Shape or Reform Shape command. After clicking on the tool, point to the upper left corner of the area you want to define as a Shape and hold down the left mouse button. Pull down a rectangle to exactly define the Shape you want and let go. The rectangle surrounds the defined area (the Shape does not include the pixels directly covered by the lines of the rectangle). If you Clone or Delete Shapes, the following Shapes are renumbered and the Shape numbers in the actual animation (Edit Action) are adjusted for the new numbering. It also renumbers the edit buffers 1-9. If you find that Clone and Delete Shapes are too slow for you, you may wish to use the "Clear Buffers" command to delete the edit buffers (presumably, there is nothing that you want in them). The currently selected Shape is indicated by the fact that it has a box drawn around it. The Play commands (P - Play, F3 Continue) can be used directly from the Edit Shapes menu. -Next Shape : > (.) Selects the next Shape (if there is one). It will switch to a new Page if it needs to. "+" also works for this command. -Clone Shape : C Duplicates the current Shape and selects the next (newly created Shape). If it was on Shape 5, then this command would insert a duplicate of Shape 5 between Shape 5 and Shape 6, renumbering all following Shapes (including what was Shape 6), then selects the cloned Shape (now numbered 6). -Reform Shape : R Replaces the current Shape with a new Shape by letting you pull a box around your new Shape. -Previous Shape : < (,) Selects the last (previous) Shape (if there is one). It will switch to a new Page if it needs to. - works for this command also. -Delete Shape : K Deletes the current Shape, renumbering the following Shapes. The current Shape number does not change, so what was the following Shape is now current. -New Shape : N Adds a new Shape after the highest numbered Shape by letting you pull a box around your Shape. This does not change the Page even if the current highest Shape is on a different Page. -Enter Shape : S -First Shape : W -Final Shape : X This both displays the current Shape number and allows you to go directly to a specific Shape. Click on the number, and it allows you type in the new number. Click on the icon to the left of the number, and it goes to number 1. Click on the icon to the right of the number and it goes to the last (highest numbered) Shape. It will change Pages if it needs to. The keyboard equivelants are: S (for Shape), W (for first) is just above the S key, and X (for final) is just below S. -Next Page : F2 Changes the Page to be used as the source artwork for your Shapes. Next Page goes to the next Page, and after the last one goes back to the first. The first Shape in that Page will be selected, and if there are no Shapes defined for that Page, it will create a small one in the upper left corner. The F1 key performs a Previous Page function. -Shapes Miscellaneous Menu : ; Goes to the Shapes Miscellaneous command menu. These selections are described in the "Shapes Miscellaneous Menu" section. -Move Tools : I Moves the Shapes toolbox from one side of the screen to the other. -Edit Action : A Switches to Edit Action screen. -Cursor Keys They can be used for fine adjustments of the currently selected Shape. If shift is not on, they adjust the lower right corner of the box. If shift is on, the adjust the upper left corner of the box. -SHAPES MISCELLANEOUS MENU -Set Ascii : Tab This relates your character Shapes to the keyboard. First you must define all the characters in your alphabet, one Shape per character. They MUST be in sequence in Ascii order. When you draw your characters, they should be on level lines (just like you see them on the page). Then when you "box" them in Direct Action, keep the tops of the boxes consistent. This will ensure proper vertical positioning when you use them in your animation. The character spacing will be determined by the width of your character Shapes (it does add some space between them). Select the first character of your set (a space for complete Ascii), and press the Tab key. It will ask you for the start of Ascii. Enter that character (again a space for complete Ascii) and press return. You may now enter your text into an animation using the "T" command in Edit Action. Ascii order is as follows: space ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ -Disk Menu : / Goes to the Disk Functions command menu. These seletions are described in the "Disk Menu" section. -Set Macro : M This command is described in the Miscellaneous menu under Edit Action. -Execute Macro : Keypad Enter This command is described in the Miscellaneous menu under Edit Action. -Repeat Macro : Keypad . This command is described in the Miscellaneous menu under Edit Action. -Cancel : (no Keyboard Equivelant) Quits this menu without doing anything. -COMMAND SUMMARY EDIT ACTION Next Frame : ] Clone Frame : Return Next Object : + (=) Clone Object : C Carry Object : Space Distant : D Next Shape : > (.) Previous Frame : [ Delete Frame : K Previous Object : - Delete Object : Del Create Object : F5 Near : N Previous Shape : < (,) Mark Range : F6 Copy Range : F7 Cut Range : F8 Paste Range : F9 Fade Up : 3 Fade Down : 4 Fade Off : \ Enter Frame : F First Frame : R Final Frame : V Enter Object : O First Object : 9 Final Object : L Enter Shape : S First Shape : W Final Shape : X Sound : * Next Scene : F2 Previous Scene : F1 Disk Menu : / Edits Menu : ' Miscellaneous Menu : ; Play : P Continue : F3 Move Tools : J Edit Shapes : E Cursor Keys : up, down, left, right DISK FUNCTIONS MENU Load : F10 Save : (no Keyboard Equivalent) Information : Help Visit : B Add Shapes : (no Keyboard Equivelant) Create New : (no Keyboard Equivelant) Refresh : Z Quit : Q EDITS MENU Set Object : 2 Undo : U Merge : 6 Reverse Paste : 5 Relocate : 7 Motion : 1 Set Buffer : Key Pad 1,2,3,4,5,6,7,8,9 Clear Buffs : Key Pad - Swap : Key Pad 0 MISCELLANEOUS MENU Search : Y Search Again : ` Short Loop : BackSpace Loop : 0 Interlace On/Off : J Text : T Single Step : H Set Macro : M Execute Macro : Keypad Enter Repeat Macro : Keypad . Goto Mark : G EDIT SHAPES Next Shape : > (.) Clone Shape : C Reform Shape : R Previous Shape : < (,) Delete Shape : K New Shape : N Enter Shape : S First Shape : W Final Shape : X Next Page : F2 Previous Page : F1 Shapes Miscellaneous Menu : ; Move Tools : I Edit Action : A Cursor Keys : up, down, left, right SHAPES MISCELLANEOUS MENU Set Ascii : Tab Disk Menu : / Set Macro : M Execute Macro : Keypad Enter Repeat Macro : Keypad . -SOME HINTS Here are some tips and concepts to help you with your animation! If you have too many large Objects in a Frame at once, Direct Action will slow down to less than 10 Frames per second. Use "Clone Frame" to slow down a sequence. Keep similar Shapes close to each other numerically, such as a running sequence. This allows you to "lay in" a sequence with "Carry Object" or "Next Shape". Work out your animation steps while in your paint program. Use "Merge Shapes" to merge in "Charset" on this disk, this will set up a character set defined for use with the text command. If you are not using the text command, you do not need to worry about character sets, Set Ascii, etc. You can add more Shapes to the Characters Page with a paint program. Its name is "Characters.shp1". You can make your own characters from scratch: Use "Create New" to set up an animation with a .shp1 Page with text in it (you don't need any ".snd" or ".bak" files). Define the text Shapes, set ascii, and save it. This is really just an animation without any action. You can also define your text within an existing animation. In most paint programs color 0 is the default background color. In Dpaint, it is in the upper left hand corner of the Palette tool. Color 1 is just below it. Color number 0 in your Shape Pages is always the transparent color. Make color 1 contrast well with color 0. This allows the menus and boxes to show up well. The colors in your animation are set by the colors in your background scene files, not your Shape page files. It is best to use the same colors as your backgrounds in your Shape Pages. However, I like to set color 0 in the Shape file (the transparent color) to some contrasting color. This allows me to see the edges of my shapes easily. Remember that you can grab Objects (Edit Action mode) from a distance. This allows you to start them from off screen entirely, and have them come on screen slowly. Try to use as few Shape Page or Background Scene files as possible within an animation; they are what use up memory. Direct Action needs 1 meg of ram to run. More memory is better. If you have a 500, 2000, or 2500, and don't have a "Fatter Agnus" chip already, go out right now and buy one. This will give you a full meg of chip ram an allow you to run VERY big animations. It will also allow you to comfortably run large paint programs at the same time (such as DPaint III). If you are making animations to be recorded on video tape, you should try to keep the RGB values of you colors at or below 10. This will reduce the amount of flicker and "crawl" in the screen and will prevent what is called "over-saturation". You may also want to "anti-alias" your animation artwork. To do this, keep some neutral colors in you palette, and when you have a strong transition for one color to another, put one pixel of a neutral color at the boundary. This is especially important on horizontal transitions. Anti-aliasing will reduce screen flicker. Don't be discouraged if you still have some flicker; if you look closely at commercial television, you will see a lot of flicker, especially when text is on the screen. If you have a screen blanker on your Amiga, turn it off before running Direct Action. If it times out and attempts to blank the screen, it can end up in a "tug-of-war" with Direct Action and cause a guru. -PrintManual This is a utility program that I am putting in the public domain. Feel free to copy and distribute. It can be used from the Workbench by clicking on it (it will print any file in the same drawer that's named "Manual"). You can also shift-click on a text file and click on PrintManual. You can also use it from the CLI, giving the file name as the first argument. It will print the first line as a title page, followed by a table of contents, followed by the body of the manual with numbered pages. The Headers for the table of contents are specified by starting them with a "-". You probably shouldn't use tabs in the text.