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調べ)
ポチップ
著:古籏 一浩
¥2,772 (2023/09/02 22:36時点 | Amazon調べ)
ポチップ
ポチップ
Kindle Unlimitedなら本自体は0円です。月額980円ですが、たまに2ヵ月99円です。
もしくは普通のJavaScriptを学べば理解が早いです。
参考になれば幸いです。
コメント