記事内に広告が含まれる場合があります

AE!After Effectsのエクスプレッション/カウントダウンのスクリプト!

Adobe

AEのエクスプレッションってJavaScriptもどきですね。JavaScriptは多少かくため理解が早く助かりまいた。

AE!After Effectsのエクスプレッション

カウントダウンのスクリプト!

var start_time = 3;  // 開始時間(秒)
var end_time = 0;    // 終了時間(秒)

// レイヤーがタイムライン上で始まってからの経過時間を計算
// time: AEの内部変数、タイムライン全体の時間(秒)
// inPoint: AEの内部変数、このレイヤーが始まる時間(秒)
var current_time = start_time - (time - inPoint); // 現在のカウントダウン時間

// 最初のフレームに3が表示されてしまうため2に書き換える
if (Math.abs(time - inPoint) < 1/30) {  // 30fps
    current_time = 2; // 最初のフレームでは"2"を強制表示
}

// カウントダウン終了後の処理
if (current_time <= end_time) {
    current_time = end_time;
}

// 時間を表示形式にフォーマット
const minutes = Math.floor(current_time / 60);
const seconds = Math.floor(current_time % 60);

// 10未満(0〜9秒)の場合に前に "0" を追加
const formattedSeconds = (seconds < 10) ? "0" + seconds : seconds;

`${minutes}:${formattedSeconds}`

0:02から0:00に変化するスクリプトです。

単純なものですけど、どうしても最初の1フレームだけ0:03という数字が表示されてしまうのが困ったため、少し対応を入れました。constも使えるようです。

あとはMathの意味がわかれば楽勝です。

AdobeのJavaScriptおすすめ本

本もでているんですね。

著:古籏 一浩, 著:あかつきみさき
¥4,257 (2023/09/02 22:35時点 | Amazon調べ)
著:古籏 一浩
¥3,168 (2023/09/02 22:26時点 | Amazon調べ)

Kindle Unlimitedなら本自体は0円です。月額980円ですが、たまに2ヵ月99円です。

もしくは普通のJavaScriptを学べば理解が早いです。

参考になれば幸いです。

コメント

タイトルとURLをコピーしました