Wave Path is a preset that provides a moving wave path that you can pin at the ends. Similar to applying the native Wave Warp effect to a straight line, but without the nasty distortion.
Copy the .ffx file into the User Presets folder, located here:
OS X: ~/Documents/Adobe/After Effects <version>/User Presets
Windows: My Documents\Adobe\After Effects <version>\User Presets
In After Effects click on
Window > Effects & Presetspanel if it isn't already open, and click on it’s context menu and then select
Wave Path should then be available under
*Animation Presets > User Presets.
Double click on it to make a new Wave Path in the current composition.
No. of waves
The number of complete waves from one end of the path to the other. You can set this to fractions such as 0.65 etc
The total length between one end of the path to the other, in pixels
The height of each wave, in pixels
The number of complete wave cycles, per second.
An amount to offset the wave cycles. You can use this to control where the wave peaks occur along it's length. Or, with Speed set to zero, animate the Offset value for greater control of the wave's progression over time.
The total number of points used in the path (higher numbers can slow down your computer)
You can pin the Start and/or End of the path. Pin Amount is the degree of pinning (100% will mean the tip of the path is fixed in place whilst 0% would mean no pinning occurs). Pin Length is the proportion of the total path length over which the pinning falls off.
You can often use quite low resolution settings to speed things up because Wave Path uses Round Corners to smooth out it’s appearance.
The middle of the path can be affected by both Start and End pinning. If the Pin Lengths overlap, you may need to increase the Height property to compensate.
Add a Zig Zag or Wiggle Paths operator for extra fun. Or a Stroke Taper or Wave.
Want to attach another layer to the end of the wave path? Try this expression on that layer’s Position property:
myWavePathLayer = thisComp.layer("Shape Layer 1") // This needs to be your Wave Path layer
myWavePathLayer.toComp([0,0]) + myWavePathLayer.content("Path 1").path.pointOnPath(1)