background preloader

Scripting & Expressions

Facebook Twitter

Plexus 2. This software ("the Software Product") and accompanying documentation is licensed and not sold. This Software Product is protected by copyright laws and treaties, as well as laws and treaties related to other forms of intellectual property. The author owns intellectual property rights in the Software Product. The Licensee's ("you" or "your") license to download, use, copy, or change the Software Product is subject to these rights and to all the terms and conditions of this End User License Agreement ("Agreement"). Acceptance YOU ACCEPT AND AGREE TO BE BOUND BY THE TERMS OF THIS AGREEMENT BY SELECTING THE "ACCEPT" OPTION AND DOWNLOADING THE SOFTWARE PRODUCT OR BY INSTALLING, USING, OR COPYING THE SOFTWARE PRODUCT.

YOU MUST AGREE TO ALL OF THE TERMS OF THIS AGREEMENT BEFORE YOU WILL BE ALLOWED TO DOWNLOAD THE SOFTWARE PRODUCT. License Grant This Agreement entitles you to install and use one copy of the Software Product. Debugging expressions. 31 Essential Scripts from AEScripts.com. If you have never used scripts before, you are missing out. These extensions to your After Effects arsenal can be invaluable. There are tons to choose from, they do a wide range of tasks, and new ones are being developed all the time. Lloyd Alvarez, our former editor actually runs AEscripts.com, an online marketplace and central hub for everything scripts in the AE Universe.

This is quite the script to start this roundup off with. Quite possibly my favorite script, and not just because of the mustache, is Magnum - The Edit Detector, which can scene detect any piece of footage you throw at it. This is great if you are working with crappy footage, or some wierd pulldown that you might encounter on your AE journey.

This is an extremely useful script, and I can think of a hundred uses for it. I am sure you all know the Keyframe Assistant "Time-Reverse Keyframes", but wouldn't it be great to have a keyboard shortcut enabled to perform this simple function? After Effects ExtendScript Training Complete Series by David Torno. After Effects ExtendScript Training is a video training series on Adobe® ExtendScript for After Effects®. Below are direct links to the entire collection right here on PVC. Enjoy and please spread the word. The After Effects ExtendScript Training series is the first comprehensive video tutorial series focused on Adobe® ExtendScript. This fourteen hour long series covers all the basics of Javascript and ExtendScript to get a new user up and building their own scripts for After Effects.

The series takes the viewer from the very basics of script writing, all the way through intermediate and advanced techniques. Along the way you will gain access to numerous bits of reusable code for your own scripts, as well as learn how to create fully functional scripts. Anyone new to scripting writing for After Effects, looking to learn Adobe® ExtendScript, or just plain looking for a different perspective on script writing in general can benefit from this training series. Episode 1 (Intro) Share This. Connect Layers - Rope, triangulation, spanning tree for After Effects. This script connects the selected layers with segments or triangles created with shape layers. It was originally created to visualize Newton2 joints but as you will see, it can do much more. Rope Creates a single shape layer with a path connecting the selected layers (2D only). Use AutoBezier or Tension options to get rounded joint style.

Spanning Tree Computes minimum spanning tree and draws each edge with a shape layer (2D and 3D support). Triangulation Triangulates the selected layers and draws each edge with a shape layer (2D and 3D support). Note that for functions that create shape keyframes (Triangulation with Filled Triangles turned on, and Rope), keyframing is done within the comp work area. Quick start guide Compatibility: For AE CS6 or later Current version: 1.08 – Initial release – May 2013 Note: And yes, everything in the promo video has been done in After Effects CS6.

Expressions - Geometry. AE Tips and Tricks.

Math

Expression language reference. Return type: Number or Array. Argument type: freq, amp, octaves, amp_mult, and t are Numbers. Randomly shakes (wiggles) the value of the property. freq value is the frequency in wiggles per second. amp value is the amplitude in units of the property to which it is applied. octaves is the number of octaves of noise to add together. This value controls how much detail is in the wiggle. Make this value higher than the default of 1 to include higher frequencies or lower to include amplitude harmonics in the wiggle. amp_mult is the amount that amp is multiplied by for each octave. T is the base start time.

Example: position.wiggle(5, 20, 3, .5) produces about 5 wiggles per second with an average size of about 20 pixels. This example, on a two-dimensional property such as Scale, wiggles both dimensions by the same amount: v = wiggle(5, 10); [v[0], v[0]] This example, on a two-dimensional property, wiggles only along the y axis: freq = 3; amp = 50; w = wiggle(freq,amp); [value[0],w[1]]; Scripts & Plugins. Dan Ebbert. After Effects Expressions. I realize that expressions can be daunting, and some would rather copy and past useful code rather than learn the language. That’s cool with me. Therefore, I’d like to share with you my top 5 after effects expressions. These are expressions I use in just about every project, and I consider them to be incredible workflow enhancements. Download My Top 5 After Effects Expressions as FFX presets here. 1. Essentially, Inertial Bounce creates a bouncing motion of any parameter from one keyframe to the next, based on its velocity.

This expression is a bit of a community effort. Modify “amp” for the amplitude or how much bounce is present. Amp = .1; freq = 2.0; decay = 2.0; n = 0; if (numKeys > 0){ n = nearestKey(time).index; if (key(n).time > time){ n--; }} if (n == 0){ t = 0; }else{ t = time - key(n).time; } if (n > 0){ v = velocityAtTime(key(n).time - thisComp.frameDuration/10); value + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t); }else{value} Like the free content here? 2. 3. 4. Expressions. From 1. Intertial Bounce Essentially, Inertial Bounce creates a bouncing motion of any parameter from one keyframe to the next, based on its velocity.

Being that true “velocity” includes the vector (or traveling direction in 3D space), the bounce happens in whatever direction the object is traveling. This also accounts for scalar or array values, so you’ll find that this expression works just as well on 2D rotation as it does on 3D position. It’s very cool! This expression is a bit of a community effort. Modify “amp” for the amplitude or how much bounce is present. Amp = .1; freq = 2.0; decay = 2.0; n = 0; if (numKeys > 0){ n = nearestKey(time).index; if (key(n).time > time){ n--; }} if (n == 0){ t = 0; }else{ t = time - key(n).time; } if (n > 0){ v = velocityAtTime(key(n).time - thisComp.frameDuration/10); value + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t); }else{value} 2. //Autofade: Add to opacity 3. 4. 5 . toComp 1. Java.