Optimize a Project
To finish Section I of this book, let's take a final look at preferences that haven't come up previously, memory management settings, and what do to if After Effects crashes.
Setting Preferences and Project Settings
The preference defaults have changed in version CS5 and you may be happy with most of them. Here, however, are a few you might want to adjust that haven't been mentioned yet:
- Preferences > General > Levels of Undo: The default is 32, which may be geared toward a system with less RAM than yours. Raise it to the maximum value of 99 unless you're seriously short on RAM.
- Preferences General: Check the options Allow Scripts to Write Files and Access Network or certain scripts won't work; these are unchecked to protect against malicious scripts, and I've never heard of one. Toggle Default Spatial Interpolation to Linear (Chapter 2).
- Preferences > Display: Check all three boxes on any up-to-date system. If you do this, you don't need to wait for thumbnails to update from some network location each time you select a source file. I prefer it this way because I like to see rendering progress even though it costs processing time, and I have a good OpenGL card so I hardware-accelerate the UI.
- Preferences > Appearance: Toggle Cycle Mask Colors so that multiple masks applied to a layer vary automatically.
Hack Shortcuts, Text Preferences, or Projects
Some people are comfortable sorting through lines of code gibberish to find editable tidbits. If you're one of those people, After Effects Shortcuts and Preferences are saved as text files that are fully editable and relatively easy to understand—although if you're not comfortable with basic hacking (learning how code works by looking at other bits of code) I don't recommend it. The files are located as follows:
- Windows: [drive]:\Users\[user name]\AppData\Roaming\Adobe\After Effects\10.0
- Mac: [drive]:/Users/[user profile]/Library/Preferences/Adobe/After Effects/10.0/
The names of the files are
- Adobe After Effects 10.0-x64 Prefs.txt
- Adobe After Effects 10.0 Shortcuts
These can be opened with any text editor that doesn't add its own formatting and works with Unicode. Make a backup copy before editing by simply duplicating the file (any variation in the filename causes it not to be recognized by After Effects). Revert to the backup by giving it the original filename should anything start to go haywire after the edit.
The Shortcuts file includes a bunch of comments at the top (each line begins with a # sign). The shortcuts themselves are arranged in a specific order that must be preserved, and if you add anything, it must be added in the right place. For example, if you don't like the fact that Go To Time was changed in CS3 (apparently to align it with other Adobe applications), search for GoToTime and make your changes to the shortcut in quotes after the = sign; "(Alt+Shift+J)" becomes "(Ctrl+G)" in Windows, "(Opt+Shift+J)" becomes "(Cmd+G)" on the Mac (and lose the Group shortcut until you change it to something else).
Be extra careful when editing Preferences—a stray character in this file can make After Effects unstable. Most of the contents should not be touched, but here's one example of a simple and useful edit (for studios where a dot is preferred before the number prefix instead of the underscore): Change
"Sequence number prefix" = "_"
to
"Sequence number prefix" = "."
This is the format often preferred by Maya, for example.
In other cases, a simple and easily comprehensible numerical value can be changed:
"Eye Dropper Sample Size No Modifier" = "1" "Eye Dropper Sample Size With Modifier" = "5"
In many cases the value after the = is a binary yes/no value, expressed as 0 for no or 1 for yes, so if you're nostalgic for how the After Effects render chime sounded in its first several versions, find
"Play classic render chime" = "0"
and change the 0 to a 1. Save the file, restart After Effects, and invoke Proustian memories of renders past.
XML
After Effects CS4 and CS5 projects can be saved as .aepx files. These are identical to use but are written in plain Unicode text; you can edit them with an ordinary text editor. Most of what is in these files is untouchable. What can you do with this format? Mostly, you can use it to locate and change file paths to swap footage sources without having to do so manually in the UI. If you're handy with scripting, or even text macros, you can automate the process when dozens or hundreds of files are involved.
This feature was added for one reason only: scriptability. Anyone capable of writing scripts to, say, swap source files procedurally (and you know who you are) has a method to edit this data without working in the application itself. We all look forward to gaining access to more editable stuff via XML in future versions of After Effects, but for now that's about it.
Memory Management
Chapter 1 included advice about running After Effects with multiprocessing enabled on a system with multiple cores and a good deal of physical memory. Although more effective handing of memory is the number one addition to After Effects CS5, it doesn't necessarily mean all of your memory troubles are over forever, particularly if your system is more limited.
If you see your system's wait icon come up—the hourglass in Windows, the spinning ball on a Mac—that means there is a fight going on somewhere for system resources. In addition to following Chapter 1's advice to leave memory available for outside applications, you may have to quit any application that is both resource intensive and outside the memory pool managed by After Effects (in other words, any app besides Premiere Pro, Encore, or Adobe Media Encoder).
But overall, the most effective way to improve memory handling on a 64-bit system is to provide the system with more physical memory, since it can be used so much more effectively. As a rule of thumb, 2 GB of RAM per processor core is not a bad guide; you can go below this to, say, 1.5 GB per core, but much lower and your system will be less efficient unless you also limit the number of cores being used (in Preferences > Memory & Multiprocessing).