【配布】ピクセル席替えエフェクト(After Effects・AviUtl2・YMM4)

「どんな画像も謎ノ美兎になるページ」で使っていたピクセルの席替えを、After Effects・AviUtl2・ゆっくりMovieMaker4(YMM4)で使えるエフェクトにしました。

あのページ、ブラウザでしか動かないんじゃなかったっけ?

ミコンスキー

そうなの。だから自分の動画の中で使えるように、3つのソフト用に作り直したよ!計算の手順は Web 版と同じなんだ。

月ノ美兎さんの画像のマスが並べ替わって謎ノ美兎になるデモ
AviUtl2版の出力そのまま。月ノ美兎さんの画像の色だけで、謎ノ美兎の形に組み替えています
目次

何ができるエフェクト?

元画像を細かいマスに分けて、マスの色は1つも足さず消さず、位置だけを入れ替えて目標画像の形に近づけます。入れ替え先までマスが飛んでいく様子が、そのままアニメーションになります。

どうやって入れ替え先を決めているかは、元の記事で図つきで解説しています。→ どんな画像も謎ノ美兎になるページを作った(仕組みの解説)

ミコンスキー

元画像に無い色は作れないから、色の種類が多い画像を元にすると目標の形がはっきり出るよ。

ダウンロード

ソフトファイル中身
AviUtl ExEdit2PixelSekigae_v12_AviUtl2.zipスクリプト(.anm2)
After EffectsPixelSekigae_v12_AfterEffects.zipスクリプト(.jsx)※Windows版のみ
YMM4PixelSekigae_v12_YMM4.zipプラグイン(ビルド済みdll+ソースコード)
全部入りPixelSekigae_v12_All.zip上の3つ

動作確認:AviUtl ExEdit2/After Effects 2025(Windows)/ゆっくりMovieMaker v4.56.1.1。

ライセンスは MIT です。動画への使用、改造、再配布は自由です。クレジットは任意ですが、書いてもらえるとうれしいです。目標に使う画像は自分で用意してください(zip に謎ノ美兎の画像は入っていません)。

AviUtl2で使う

入れ方

  1. zip の中の「ピクセル席替え.anm2」を AviUtl2 の Script フォルダに入れる(例:C:\ProgramData\aviutl2\Script)
  2. AviUtl2 を起動する。初回は「このプラグイン・スクリプトを信頼して使用する」の確認が出るので、許可する

使い方

  1. レイヤー1に元画像(色を使う方)、レイヤー2に目標画像(形を真似る方)の画像オブジェクトを置く
  2. 元画像のオブジェクトを右クリック →「オブジェクトにフィルタ効果を追加」→「ミコンスキー」→「ピクセル席替え」
AviUtl2でオブジェクトにフィルタ効果ピクセル席替えを追加するメニュー
右クリックメニューの「ミコンスキー」の中にあります
  1. 「目標の指定」を「レイヤー(絶対指定)」にして、「目標レイヤー番号」に 2 を入れる
  2. 目標画像のオブジェクトは透明度を100にする(画面には映らず、形だけ読まれる)
  3. 「進行度」を 0→100 に移動させる(または「アイテムの長さで自動再生」をオン)
ピクセル席替えの設定。目標の指定をレイヤーにして目標レイヤー番号を2にしたところ
目標はレイヤーでも画像ファイルでも選べます
AviUtl2のタイムライン。レイヤー1に月ノ美兎、レイヤー2に謎ノ美兎を置き、進行度50%で崩れている途中
進行度 50%。マスが飛んでいる途中
進行度100%で謎ノ美兎の形に組み替わったAviUtl2のプレビュー
進行度 100%。月ノ美兎さんの色だけで謎ノ美兎の形になりました

目標のレイヤーを非表示にしちゃダメなの?

ミコンスキー

非表示にすると AviUtl2 からそのレイヤーの絵が読めなくなるんだ。だから表示したまま透明度を100にしてね。相対指定にすると、「このオブジェクトの1つ下」みたいに指定できるよ。

画像ファイルで指定したいときは、「目標の指定」を「画像ファイル」にして「目標画像(ファイル)」で選びます。最初の1フレームだけ計算で数秒止まりますが、同じ設定なら2回目からは一瞬です。

After Effectsで使う

準備(最初の1回だけ)

「編集」→「環境設定」→「スクリプトとエクスプレッション」で、「スクリプトによるファイルへの書き込みとネットワークへのアクセスを許可」をオンにします。Windows 版の After Effects 専用です。

使い方

  1. 元画像と目標画像を同じコンポに置く
  2. 「ファイル」→「スクリプト」→「スクリプトファイルを実行」で「ピクセル席替え.jsx」を選ぶ
After Effectsのコンポに月ノ美兎と謎ノ美兎の画像レイヤーを置いたところ
レイヤー1に元画像、レイヤー2に目標画像を置いた状態
  1. 出てきた画面で「元画像(色を使う方)」と「目標画像(形を真似る方)」のレイヤーを選んで「作成」
  2. 連番の書き出し先フォルダを選ぶ
ピクセル席替えのダイアログ。元画像と目標画像をレイヤーから選ぶ
元画像・目標画像はコンポのレイヤーから選びます

数秒待つと、席替えアニメーションの連番(TGA・透明あり)が書き出され、「ピクセル席替え」レイヤーとしてコンポに置かれます。元の2つのレイヤーは非表示になります。

After Effectsでピクセル席替えレイヤーが置かれ、1秒13フレーム時点でマスが飛んでいる途中
コンポに置かれた「ピクセル席替え」レイヤー(途中)
After Effectsで最後のフレームが謎ノ美兎の形になったところ
最後のフレーム

計算はAEの中でやってるの?

ミコンスキー

最初はそうしたんだけど、約3,400万回の入れ替えはAEのスクリプトだと10分以上かかって固まっちゃったんだ。だから計算と書き出しは Windows に最初から入っている PowerShell に任せていて、64マス・3秒分なら数秒で終わるよ。

なんでエフェクトじゃなくて連番なの?

ミコンスキー

AE のスクリプトは画素を直接描けないから、計算した動きを画像に書き出して読み込む形にしたんだ。書き出し後はふつうの素材として扱えるよ。

YMM4で使う

入れ方

zip の中の「ピクセル席替え」フォルダを、YMM4 の user\plugin フォルダに入れて YMM4 を再起動します(例:YukkuriMovieMaker_v4\user\plugin\ピクセル席替え\MikonsukeyPixelMorph.dll)。自分でビルドしたい人向けに、ソースコード(source フォルダ)も入れています。

使い方

  1. 元画像の画像アイテムを置く
  2. 映像エフェクトの「+」→ 検索欄に「ピクセル」→「ピクセル席替え」
YMM4の映像エフェクト追加メニューでピクセル席替えを選ぶところ
映像エフェクトの追加から検索できます
  1. 「目標画像」で目標の画像ファイルを選ぶ
  2. 「進行度」を 0→100 に直線移動させる
YMM4のピクセル席替えの設定。目標画像にnazo_tgt.jpg、進行度50%
目標画像と進行度を設定
YMM4のプレビュー。進行度50%と100%
左:進行度 50%/右:進行度 100%

YMM4 版は、目標を画像ファイルで指定します(YMM4 のエフェクトからは他のアイテムの絵を読めないため)。登場退場など動きのエフェクトは、ピクセル席替えより下に置いてください。元の画像を差し替えたときは「元画像を読み直す」をオン→1回再生→オフにします。

設定の意味

設定初期値意味
マス数64縦横のマスの数。大きいほど細かく、計算が重くなる
移動のしにくさ13大きいほど近くの席にしか動かない。0だと遠くまで飛ぶ
計算の丁寧さ標準(×24)1世代あたりに入れ替えを試す回数(マス数×倍率)
イージングイーズインアウトマスの動き方。オーバーシュートは少し行き過ぎて戻る
ずらし40%マスごとに出発の時間をずらす量。0だと全部いっせいに動く
乱数シード12345変えると別の並び方になる
1マスの大きさ(AviUtl2・AE)8px出力の1マスのピクセル数。出力サイズ=マス数×これ
長さ(AE)3秒書き出す連番の長さ
アイテムの長さで自動再生(AviUtl2)オフオンにすると、進行度を動かさなくてもオブジェクトの長さで0→100になる
元画像を読み直す(YMM4)オフ元の画像を差し替えたときだけオンにする

うまくいかないとき

こうなる原因と対処
AviUtl2 で何も変わらない目標が選ばれていない/目標レイヤーが非表示。目標レイヤーは表示したまま透明度100に
AE で「ファイルを書き込めません」環境設定の「スクリプトによるファイルへの書き込み…を許可」がオフ
AE が止まったように見える計算と書き出しの間(数秒〜十数秒)は操作できません。プリコンポなどを元にすると数十秒かかります
形がはっきりしない元画像に目標の色が足りない。色の多い画像を元にするか、「移動のしにくさ」を下げる
YMM4 でエフェクトが見つからないdll を入れたフォルダの場所を確認して、YMM4 を再起動

再現条件

項目内容
確認したこと同じマスの色を入れたとき、Web版と同じ手順のJavaScript・LuaJIT(AviUtl2版)・C#(AE版・YMM4版)の計算結果が4096マスすべて一致。3つのソフトで実際に動かして、同じ形に組み替わることを確認
計算時間の目安64×64・標準で約3,391万回の試行。C#約2秒、LuaJIT約2.5秒。AE版は計算+90枚の書き出しで約6秒
乱数xorshift32(席替え:シード値、ずらし:777で固定)
切り抜き元画像・目標画像とも中央を正方形に切り抜く
透明部分計算では白として扱う。描くときは元の透明度のまま

※ マスに分けるときの縮小方法はソフトごとに少し違うので、ソフトをまたぐと結果がわずかに変わることがあります。

いかがでしたか?

いかがでしたか?と大きく表示されるパチンコ風アニメーション

ピクセルの席替えを、After Effects・AviUtl2・YMM4のエフェクトにして配布しました。色を足さず並べ替えるだけなので、元画像の色が残ったまま別の形になるのがおもしろいところです。

ミコンスキー

作った動画があったら、ぜひ見せてね!動かない環境があったらコメントで教えてね。

クレジット

  • 謎ノ美兎・月ノ美兎さんの画像は、動作の説明のために使用しています。本記事は ANYCOLOR 二次創作ガイドラインに沿った非公式のファン作品で、ANYCOLOR株式会社および関係者様とは関係ありません(ガイドライン)
  • 謎ノ美兎:つきのみと没カット集(月ノ美兎)/月ノ美兎さん:【5時間】たんじょうび【雑談】(月ノ美兎)
  • 元ネタのアルゴリズム:obamify(Spu7Nix)

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

目次