Skip to content

nuclearsugar/AfterEffectsScripts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

247 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

After Effects Scripts by ISOSCELES

This is my personal collection of JSX scripts for After Effects. These scripts were created to automate repetitive production tasks since I often work with hundreds of comps in my projects. The aim is to reduce the amount of manual effort required so that I can instead focus my energies on creative experiments. These scripts save me a significant amount of time.

Also included in this repo are articles sharing my experience with Rendering Multiple Instances, Wiggle Expressions, and JSX Script Blueprint for GenAI.

Script Installation

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

MacOS: Applications\Adobe After Effects <version>\Scripts

Script Usage

To run a JSX script within After Effects...

Open After Effects >>> File menu >>> Scripts >>> choose a script to execute

Script Summary

  • ISO_ChangeAlphaToIgnore.jsx - This script will set “Alpha: Ignore” (within the Interpret Footage window) for all the selected footage items in the Project window.
  • ISO_ChangeAlphaToPremultiplied.jsx - This script will set “Alpha: Premultiplied” (within the Interpret Footage window) for all the selected footage items in the Project window.
  • ISO_ChangeAlphaToStraight.jsx - This script will set “Alpha: Straight” (within the Interpret Footage window) for all the selected footage items in the Project window.
  • ISO_ChangeFootageFrameRate.jsx - This script will prompt the user for the desired frame rate and then apply it to all selected footage items in the Project window.
  • ISO_FolderTemplateCreator.jsx - This script creates a folder structure following a template. The new folders will be created within the currently selected folder. Or if no folder is selected then the new folders will be created in root of project.
  • ISO_MakeSeamlessLoop.jsx - This script will create a seamless loop (with user-defined crossfade length) for the selected comps in the project window. You must precompose the main comp before executing this script.
  • ISO_MoveTimeIndicatorFrames.jsx - This script will open the selected comps in the Project window and move the Current Time Indicator to a user-specified frame.
  • ISO_MoveTimeIndicatorSeconds.jsx - This script will open the selected comps in the Project window and move the Current Time Indicator to a user-specified time (measured in seconds).
  • ISO_MoveTimeIndicatorTimecode.jsx - This script will open the selected comps in the Project window and move the Current Time Indicator to a user-specified timecode (H:MM:SS:FF).
  • ISO_PasteClipboardIntoComps.jsx - This script will paste the clipboard contents into each comp that is selected in the Project window. This has only been tested with pasting a layer (footage, adjustment layer, or solid layer) since this was the original use-case. I would recommend executing this script only with 100 comps selected at a time. Any more and After Effects will freeze. Not sure why.
  • ISO_PasteClipboardIntoFootage.jsx - This script will paste the clipboard contents (such as effects or masks) into each of the footage layers within a comp. The footage file extension is determined by the user. This operation will be executed for the selected comps in the Project window. Supports both single footage files and frame sequences.
  • ISO_PrecompAllLayers.jsx - This script will precomp all layers within the selected comp and then put them together into a single precomp. It will then move the newly created precomp into a folder named "Precomped via script". This operation will be executed for the selected comps in the Project window. Since all layers are precomped into a single comp, only the "Pre-compose: move all attributes into the new composition" technique can be utilized in this context and the "Leave all attributes in 'comp name'" technique is not possible.
  • ISO_PrecompSelectedLayersToSeparateComps.jsx - This script will look at the user-selected layers in the active comp and then proceed to precomp each layer into its own unique comp. It will then move all of the newly created precomps into a folder named "Precomped via script". All of the functionality of the native AE precomp tool is replicated within this script. Although interestingly it differs in that the "Leave all attributes in 'comp name'" can utilize the "Adjust composition duration to the time span of the selected layers" option.
  • ISO_PrerenderedFootageIntoMatchingComps.jsx - This script will search for a footage item with the same name as the original source comp and then add it as the top-most layer in the comp. This is known as pre-rendering (or freezing). Works with both video footage and image sequences. This operation will be executed for the selected comps in the Project window. You should import the footage into After Effects before executing this script.
  • ISO_RandomizeRotation.jsx - This script will randomize all existing rotation keyframes for the selected layer within a comp.
  • ISO_RandomizeSeeds.jsx - This script will look at the selected comps in the Project window and then randomize the seed value for all wiggle expressions (in all layers).
  • ISO_RemoveEffectsViaDelete.jsx - This script will delete all effects on all layers within a comp. Effects inside nested comps are unaffected. This operation will be executed for the selected comps in the Project window.
  • ISO_RemoveEffectsViaDisable.jsx - This script will disable all effects on all layers within selected comps. Effects inside nested comps are unaffected. This operation will be executed for the selected comps in the Project window.
  • ISO_RemoveExpressions.jsx - This script will remove all expressions from all layers. This operation will be executed for the selected comps in the Project window.
  • ISO_RenameAndSerialize.jsx - This script will batch rename the selected comps in the Project window with user-defined prefix, suffix, numbering, padding, and separator.
  • ISO_RenameCompUsingLowestLayer.jsx - This script will rename a comp based on the name of the lowest layer within said comp. If that layer is footage or an image sequence then the file extension, frame range, and trailing underscore will be removed from the name. This operation will be executed for the selected comps in the Project window.
  • ISO_RenderQueueSplitIntoSeparateProjects.jsx - This After Effects script takes the selected comps in the Project panel, splits them into fixed-size batches (N per batch), adds each batch to the Render Queue, and saves a separate After Effects project file for each batch. Why is this useful? Reason #1: If you’re rendering somewhere over 600+ comps, then you’ll run into a known bug with After Effects 2026 (and prior versions) where if you try to add too many comps into the render queue then the GUI will overflow and glitch out. This is because the current UI framework only supports a panel being 30,000 pixels wide or long. I've reported this bug to Adobe and the dev team is working on a fix. Reason #2: If you're rendering multiple instances via Aerender, or rendering back-to-back projects via Aerender, then this script can save you some manual work in setting up the render queues. Reason #3: If you're rendering for more than 24 hours, the AE render engine will gradually slow down over long uninterrupted renders. After 48 hours of continuous rendering, I frequently see the per-frame render times slow down by a factor of two and yet I know that the complexity of the comps is consistent. So by reloading the whole AE render engine every so often, it will maintain consistent performance and avoid slow downs.
  • ISO_ScriptLauncherHotkeys.jsx - This script will create a GUI so that the user can select a script and then execute it by clicking the "execute script" button or via hotkeys. The hotkeys (0-9) can be assigned by selecting a script and clicking a "Assign Hotkey" button. After pressing a keyboard hotkey then you must click in the "Scripts Listing" area for a subsequent hotkeys to function. This is due to a limitation with JSX scripts. This script will auto index all JSX and JSXBIN scripts located within the same folder as this script (subfolders too) or user can select the root folder manually by clicking the "Change Dir" button. If the user manually changes the root folder, then the path is saved as a setting and used when the script is opened again in the future. If you install a script while After Effects is still open then you can click the "Refresh Dir" button. Installation Option 1: If you prefer for this script to be a dockable window, then install this script within the "ScriptUI panels" folder and then when you use the script you'll likely want to manually point it to the "Scripts" folder, which can be achieved by clicking the "Change Dir" button. Installation Option 2: If you prefer for this script to be a floating window, then install it within the "Scripts" folder and it will automatically index all available scripts from this location.
  • ISO_StretchFootageInComps.jsx - This script will apply a user-defined Stretch percentage to all footage layers within selected comps in the Project window.
  • ISO_TrimCompToWorkArea.jsx - This script will trim the comp to its work area. This operation will be executed for the selected comps in the Project window.
  • ISO_WorkAreaEndExtendByNFrames.jsx - This script extends the "Work Area End" point by a user-defined number of frames for selected comps in the Project window.
  • ISO_WorkAreaEndShortenByNFrames.jsx - This script shortens the "Work Area End" point by a user-defined number of frames for selected comps in the Project window.
  • ISO_WorkAreaEndToFootageEnd.jsx - This script will move the "Work Area End" to the end of the contained footage of the comp. This will be applied to the comps that are selected in the Project window.
  • ISO_WorkAreaStartToFootageStart.jsx - This script will move the "Work Area Start" to the earliest contained footage start in the comp. This will be applied to the comps that are selected in the Project window.
  • ISO_WorkAreaStartToSpecificFrame.jsx - This script will move the "Work Area Start" to a user-defined frame for all selected comps in the Project window.
  • rd_RenderLayers_IsoscelesFix.jsx - This is a well known script within the Motion Design community and is very useful in certain situations. But for several years the script was no longer functional due to changes in new versions of After Effects. So I did some tests and was able to determine what was causing the issue. From there I crafted up a text prompt and ChatGPT was able to fix the script. The original authors website is offline redefinery.com and yet the broken version of the script is freely distributed on aescripts.com. That left me in a bit of an awkward situation regarding distribution of the modified version of this script. But a comment included within the script from the original author gave a feeling of openness: "I'm just trying to share knowledge with and help out my fellow AE script heads". Seeing as how this script was released in 2013, I've decided to share this modified version of the script to keep it alive and useful for others to enjoy.

Credits

These scripts were vibecoded using the various model versions of ChatGPT (free version). Each script was created for a specific issue I was facing at the time and so these scripts have actually been used in production (using After Effects 2025-2026). That said, some of these scripts have a specific use-case and may not behave as expected in different scenarios. Use these scripts at your own risk.

If you need to tweak, fix, or create your own script then consider using my JSX Scripting Blueprint for GenAI as a starting point.

I'm unable to provide support or guarantee compatibility that these scripts will function with future versions of After Effects. Please feel free to fork and modify these scripts to suit your needs. Shared using the GPL-3.0 license. Cheers!

About

After Effects scripts for working with hundreds of comps

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors