Select an object. > Modify panel > Modifier List > Object–Space Modifiers > Point Cache
Select an object. > Modifiers menu > Cache Tools > Point Cache
The Point Cache modifier lets you store modifier and sub-object animation to a disk file that records only changes in vertex positions, and then play back the animation using the information in the disk file instead of the modifier keyframes. This is useful when the computation required for vertex animation becomes so excessive that it causes animation playback to run slowly or drop frames.
Another use for this modifier is to apply the same animation to a number of objects, varying the Start Time and Strength settings for each so they don't all move identically.
The Point Cache modifier is also available in a world-space version, for which usage is the same.
Functionality of both versions of the Point Cache modifier is greatly expanded in 3ds Max 9. New features include:
Adjustable playback ranges and a playback graph, to animate which cache frame is played back. This lets you load a cache and then animate it, slowing down, stopping, reversing, etc.
Nth-frame sampling, so you can sample every few frames to save disk space if sampling every frame is unnecessary.
The "strength" is adjustable in Absolute mode, so you can easily blend the cache with what is below in the stack.
To use the Point Cache modifier:
Use one or more modifiers to animate an object. For example, you might apply a Bend modifier, and then set keyframes for the Angle parameter to make the object bend back and forth.
If the animation is a good candidate for caching, the playback will drop many frames with Real Time Playback turned on, and will run slowly with Real Time Playback turned off.
From the Modify panel > Modifier List, choose Object-Space Modifiers > Point Cache.
On the Parameters rollout > Record group, set frame numbers for Start Time and End Time.
If you plan to render the cached animation, and you'll be using motion blur, increase the Sample Rate setting.
Click the Record button, and use the Save Cache dialog to specify a cache file.
The software records the animation to the cache file. When finished, the cache file name appears in the Cache File group.
In the Record group, click Disable Modifiers Below.
This turns off all the object's modifiers below Point Cache so that only the cached vertex animation will appear when you play back the animation.
Contains settings for recording vertex animation.
[file name]—After you record or load a cache file, its name appears in this field.
New—Creates a new, empty cache file. After setting a new file, use Record to create the cache data.
Load—Loads a vertex animation from a cache file on disk into the Point Cache modifier. If the number of vertices in the cache file does not match the number of vertices in the object, a warning appears, but no error occurs.
Unload—Temporarily frees the current cache file, so it can be edited or deleted externally.
Reload—Reopens the current cache file, if previously unloaded.
Displays cache statistics in read-only format, including the point count, sample rate, sample count, start/end frames, and errors, if any.
Contains settings for cached animation playback.
Start Frame—Sets the first frame for recording the vertex animation. Default=first frame of the active time segment.
Using decimal fractions lets you start at a sub-frame setting when using a Frame:Ticks time display. Default=0.0.
End Frame—Sets the last frame for recording the vertex animation. Default=last frame of the active time segment.
Using decimal fractions lets you start at a sub-frame setting when using a Frame:Ticks time display. Default=0.0.
Sample Rate—Sets the number of evenly spaced samples per frame. Increase this number when rendering with motion blur, which uses sub-frame sampling.
Record—Stores the vertex animation to a disk file. If no cache file is specified, or the specified file doesn't exist, activates the Save Points dialog, which lets you specify a path and file name for the cache file. Click Save to record the file, and then load it into the Point Cache modifier, ready for playback.
Tip: To change the path or file name, use Cache File group > New and specify a different cache file.
Enable Modifiers Below—Turns on all stack modifiers below the Point Cache modifier. Use this when you want to change modifier settings.
Disable Modifiers Below—Turns off all the object's stack modifiers below Point Cache so that only the cached vertex animation appears when you play back the animation.
Local—The method the modifier uses to load the cache file. The options are:
Stream—Keeps the cache file open for fast access, but only loads a single frame at a time to conserve memory. This is the default mode.
Per-Sample—Opens the cache file, reads a single frame, and then immediately closes the file. This is slower than the Stream method, but is useful if many users are reading/writing the same set of cache files since the cache files won't be locked open as you read from them.
Pre-Load—Loads the entire cache file into memory for fast access, and then closes the file. This is particularly useful in networked situations, or when a few cache files are used by many objects in one scene. In the latter case, using this option prevents each object from thrashing the disk on playback.
Be conservative in using this, as it can consume a great deal of memory. However, if one cache file is used by several objects, the cache is loaded into memory only once.
Slave—These options apply if 3ds Max is running as a network-rendering client; see the preceding for details. In this situation, only Per-Sample and Pre-Load are available, and the default option is Per-Sample, so the clients don't lock files.
[label]—This read-only field displays the size of the pre-loaded data when Local is set to Pre-Load.
Strength—Affects the motion relative to the original animation. Applies only when Use Relative Offset is on. Default=1.0. Range=-10.0 to 10.0.
At 1.0, the animation plays back the same as recorded. With strengths between 0.0 and 1.0, the animation is relatively restrained. At strengths greater than 1, the animation is exaggerated. With negative Strength settings, the motion is reversed.
Relative Offset—Enables offsetting the animated vertex positions relative to their positions as recorded, based on the Strength setting. Default=off.
Note: When you turn on Relative Offset and play back a cached animation with the modifiers turned on, the cached vertex positions are calculated relative to their positions as calculated by the modifiers. For example, if you record a Bend animation to a cache file, and then play it back with both Relative Offset and the Bend modifier on and Strength=1.0, all vertex positions are doubled, resulting in exaggerated motion.
Apply To Whole Object—When off, only the active vertex selection is animated. In this case, for the cache animation to be visible, the selection must include at least some of the originally animated vertices.
Playback Type—Specifies how playback occurs:
Original Range—Plays back the cache over the range it was originally recorded, so the animation will always be the same as the original.
Custom Start—Plays back the cache from a custom start time, set by Start Frame, but the animation length and playback speed will be the same as the original animation.
Custom Range—Lets you set start and end frames within which the current cache plays back. Using a range that is smaller than the original record range plays the cache back faster, while specifying a larger range plays the cache back slower.
Playback Graph—Lets you animate which cache frame is played at any given time.
For example, if you record a cache from frames 0 to 100 and then want it to play back twice as fast forward and then in reverse, choose this option, turn on Auto Key, set the Frame parameter to 0.0 at frame 0, 100.0 at frame 50, and then back to 0.0 at frame 100. The function curve of this parameter in Track View shows how the cache is played back. Animating the Frame value lets you achieve unusual effects such as slowing a cache down over time, creating a ping-pong effect during playback, etc.
Start Frame—The frame number at which the cached animation starts playing back. Using decimal fractions lets you start at a sub-frame setting when using a Frame:Ticks time display. Available only when Playback Type is set to Custom Start or Custom Range. Default=0.0.
End Frame—The frame number at which the cached animation starts playing back. Using decimal fractions lets you start at a sub-frame setting when using a Frame:Ticks time display. Available only when Playback Type is set to Custom Range. Default=0.0.
Frame—Lets you animate playback of the cache; for details, see Playback Graph, above.
Clamp Graph—Controls what gets loaded when the Playback Graph frame is out of the original recorded range.
Take an example in which the playback frame is set to 105, but the original cache was recorded over frames 0-100. With Clamp Graph on, the loaded frame will be 100. If it's off (the default), the cache will "wrap around" and load frame 5.
This lets you loop caches more easily. In the above example, you could simply have a two-key playback graph. The first key would be at frame 0 with a value of 0.0, and the second would be at frame 100 with a value of 100.0. You would then set the out-of-range type for the Frame parameter (Playback Frame in Track View) to Linear, and the cache would loop back smoothly to the beginning at frame 101.