初期衝動の終わり
明日の作業が多くて、寝るのが嫌で、自分の昔のMADを見返してた。
昔の自分の動画、今見るとヘタクソだけど”飢え”が感じられてよかった。初期衝動って感じがした。
明日の作業が多くて、寝るのが嫌で、自分の昔のMADを見返してた。
昔の自分の動画、今見るとヘタクソだけど”飢え”が感じられてよかった。初期衝動って感じがした。
MAD制作で詰まりがちなポイントQ&A。ほぼメンタル面。随時更新するかもしれない。
【awarenessとは 意味・読み方・使い方】
意味・対訳:(…に)気づいていること、(…を)知ること、気づくこと、知ること、自覚、意識
理想と自分を比べるやつ(と言いつつ好きな作家の映像見て色々書くだけのやつ)
先月の最後の週にTwitter(X)からの保存し忘れてたからやたら💙が多い。
映像作品からの引用に限定する。
現状:頭では(作業しなきゃ……)と思いつつ実際は作業してないカスみたいな時間と謎の後ろめたさを抱えた意味不明な精神状態
![]()
ちょっと工夫が要るのでメモ。TypeAnimeJPを作ったときの知識が役に立った。
以下のテキストをアニメーションさせるとする。
ああああいいいううええええおおおおお改行部分に「\n」を追加する。
ああああ\nいいい\nうう\nええええ\nおおおおお改行を無くして1行にする。
ああああ\nいいい\nうう\nええええ\nおおおおお空のテキストレイヤーを作成し、ソーステキストに以下のエクスプレッションを書く。(text変数にさっきのテキストをぶち込む)
var text = "ああああ\nいいい\nうう\nええええ\nおおおおお";スライダー制御エフェクトを追加して、その値を取得するエクスプレッションを追記。
Math.roundで整数値にまとめる。文字数を指定するための値なので。
var s = Math.round(effect("スライダー制御")("スライダー"));slice関数でスライダー制御の値の文字数だけ表示されるようにする。
text.slice(0, s);これでスライダー制御の値にキーフレームを打てばアニメーションするようになる。
このままでは上揃えのままなので、下揃えにするためにアンカーポイントにエクスプレッションを追加していく。
sourceRectAtTimeでこのレイヤーの縦横のサイズを得る。
さっきわざわざテキストをエクスプレッション内に記述したのは、普通にテキストを書いてアニメーターの不透明度でアニメーションさせると、レイヤーのサイズが変化しないから。
ちなみに「time - thisLayer.startTime」がちょっと工夫ポイント。startTimeの説明がややこしいので意味は割愛。
var r = thisLayer.sourceRectAtTime(time - thisLayer.startTime, true);レイヤーの縦横のサイズが取得できたので、その値を使って位置を補正。もともとのアンカーポイントの値にレイヤーの高さを追加するだけ。
[value[0], value[1] + r.height];ソーステキスト
var text = "ああああ\nいいい\nうう\nええええ\nおおおおお";var s = Math.round(effect("スライダー制御")("スライダー"));text.slice(0, s);アンカーポイント
var r = thisLayer.sourceRectAtTime(time - thisLayer.startTime, true);[value[0], value[1] + r.height];好きな曲の歌詞をクソ記事のタイトルに据えるのそろそろやめたい
ゲームチェンジャーの話をしたくて。

https://twitter.com/ALINCO2020/status/1877327428147724429
パスのトリミングの終了点とオフセットをいじって実現。長方形のサイズを変更しても追従する。横方向と縦方向でエクスプレッションが違う。
↓終了点
var size = thisProperty.propertyGroup(1).propertyGroup(1)(1)(2); // 長方形パスのサイズを取得できればなんでもいいvar x = size[0];var y = size[1];var ratio = x / (x + y);value * ratio + 100 * (1 - ratio) / 2;↓オフセット
var end = thisProperty.propertyGroup(1)(2); // パスのトリミングの終了点を取得できればなんでもいいvar size = thisProperty.propertyGroup(1).propertyGroup(1)(1)(2); // 長方形パスのサイズを取得できればなんでもいいvar x = size[0];var y = size[1];var ratio = x / (x + y);var trueEndValue = (end - 100 * (1 - ratio) / 2) / ratio;-360 * trueEndValue / 100 / 2 * ratio;↓終了点
var size = thisProperty.propertyGroup(1).propertyGroup(1)(1)(2); // 長方形パスのサイズを取得できればなんでもいいvar x = size[0];var y = size[1];var ratio = 1 - (x / (x + y));value * ratio + 100 * (1 - ratio) / 2;↓オフセット
var end = thisProperty.propertyGroup(1)(2); // パスのトリミングの終了点を取得できればなんでもいいvar size = thisProperty.propertyGroup(1).propertyGroup(1)(1)(2); // 長方形パスのサイズを取得できればなんでもいいvar x = size[0];var y = size[1];var ratio = 1 - (x / (x + y));var trueEndValue = (end - 100 * (1 - ratio) / 2) / ratio;-360 * trueEndValue / 100 / 2 * ratio - 360 * (1 - ratio) / 2釣りみたいな記事タイトルやめろ。
クオリティの高いカット編集一本勝負の動画で感じる「カットの切れ味の良さ」をもう少し頑張って言語化してみる。言葉にして再現性を得るぞうおおおおおおおお。