Keyfast
Script
Free

Fade In From Start

By Jack Vaughan
Updated 11/1/2025

About

Fades in selected layers over 30 frames starting at each layer's in-point.

Code

// Cavalry Script: Keyfast - Fade In from Start
// For each selected layer, animates opacity from 0 to 100 over 30 frames starting at layer in-point
var selectedLayers = api.getSelection();
if (selectedLayers.length === 0) {
console.warn("No layers are selected. Please select some layers first.");
} else {
var frameOffset = 30; // Number of frames for the animation
console.info("Animating opacity (fade in from start) on " + selectedLayers.length + " selected layer(s)...");
for (var i = 0; i < selectedLayers.length; i++) {
var layerId = selectedLayers[i];
var layerName = api.getNiceName(layerId);
try {
if (api.hasAttribute(layerId, "opacity")) {
var start = api.getInFrame(layerId);
var end = start + frameOffset;
api.keyframe(layerId, start, {"opacity": 0});
api.keyframe(layerId, end, {"opacity": 100});
console.log("✓ " + layerName + ": Fade In from start (frames " + start + " → " + end + ")");
} else {
console.warn("✗ " + layerName + ": No opacity attribute");
}
} catch (error) {
console.error("✗ Error processing " + layerName + ": " + error);
}
}
}