๐ŸŒŠ Wave Path

Wave Path is an After Effects script 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.

Wave Path is available as a direct download, here.

Wave Path was previously available as an Animation Preset or .FFX file. If you already have this older version, consider downloading it again and installing the newer and more reliable script version instead.



Wave Path runs as a ScriptUI Panel with a button if you install it like this:

Quit After Effects if it is running. Move the file "Wave Path.jsxbin" to your โ€œScriptUI Panelsโ€ folder, which is located here:

Windows: Program Files\Adobe\Adobe After Effects <version>\Support Files\Scripts\ScriptUI Panels

Mac OS: Applications/Adobe After Effects <version>/Scripts/ScriptUI Panels

Launch After Effects and click Window > Wave Path.

You can also run Wave Path straight from the Scripts folder, or from a launcher utility like K Bar, and in both those cases itโ€™ll just do itโ€™s stuff with no panel.


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.

Tips + FAQ

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)

Version History

2.0.1 - December 7th 2022

Updated expression

2.0 - December 7th 2022

Initial release as script.

Expression syntax updated to provide compatibility with legacy extendscript

1.0 - August 9th 2022

Initial release as animation preset

Last updated