Aviutl Tips - 001 「動画をストップモーションっぽくしよう」

##この企画は何

講座動画を作るには時間が足らないけど、よく受ける質問や気づいたことのメモなどに、多数のジャンルで気まぐれに投稿して行こうと思い立った次第です。
本当に気まぐれなので、投稿頻度はあまり期待しないでください...

尚、書いてほしい話題、質問などは、[私のtwitterアカウント](https://twitter.com/Aodaruma_)までお願いします。

## 解説

1. 動画ファイルを、ドロップシャドウなんかを用いて写真っぽくする
2. ランダム移動させる
3. 一時保存RMのReadとSaveで挟む
4. 時間制御でコマ落ちさせる

[![完成動画](http://img.youtube.com/vi/GF9tVCNLeeY/0.jpg)](http://www.youtube.com/watch?v=GF9tVCNLeeY)


---

### 0. 素材用意

動画ファイルを用意します。
事前にモーションを組んでるなら、シーンもしくはフレームバッファの一時保存で画像化して持ってくると良いと思います。
<img width="1209" alt="0-1.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/7e0d2ebf-8f45-f2a8-94f0-370f3b6d0a24.png">
背景を用意します。
<img width="1208" alt="0-2.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/12d0d7f7-9445-b63e-618f-57622557dd28.png">

### 1. 写真っぽくする

動画ファイルを縮小します。この時設定したサイズが、そのまま擬似写真のサイズになります。
<img width="1035" alt="1-1.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/2905b5d0-affb-b5e5-6038-dcef0bae15fd.png">
写真っぽい色合いにします。

色合いについては、印刷されたインクの感じを出すために、`色調補正`で黒の部分を薄くすると良いでしょう。彩度もお好みで(80ぐらい)。
写真の縁を強調するために、コントラストをいじって画像の白をちょっと暗くしたりします。(これも動画の雰囲気次第で判断してください)

また、アナログ写真っぽくしたり、画像フィルターをかけた感じにするなら、夢幻ギンガさんのスクリプト`グラデーションマップ`を用いると良いと思います。
<img width="1081" alt="1-2.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/8a8d0d0d-04c6-1cdb-0729-4a779954fd6c.png">
写真の縁を`縁取り`で再現します。ぼかしは0にしてください。
<img width="1209" alt="1-3.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/1a29b070-ffed-d059-85b6-8daa4fe4fa51.png">
ドロップシャドウを追加します。

個人的に93さんのスクリプト`effect-B`の`個別シャドーB`が一番簡単に雰囲気を出せるので、こちらを用います。
Aviutl標準のエフェクト`シャドー`でも可能ですが、慣れないうちは上記のスクリプトを用いると良いです。
<img width="1214" alt="1-4.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/0124f5cd-cff6-7662-0833-e5ad6c4c7ff3.png">
シャドーの設定はデフォルトのままです。

これで大体写真っぽくなりました。
気に入らなければ、お好みでエフェクトの値を調整したり、他のスクリプトを用いて雰囲気を変えてみるなどしてみてください。

###2. ストップモーションっぽい動きをつける

先ほど写真っぽくした動画に、ストップモーションっぽい動きをつけます。

オブジェクトの座標(X,Y,Z)のトラックバー、回転のトラックバーにそれぞれ`ランダム移動`を設定します[^1]。
範囲はお好みでどうぞ。ここでは座標は(-20,-20,0)から(20,20,0)の範囲、回転は(-5)から(5)の範囲にします。
<img width="1103" alt="2-1.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/2887fbb2-48fe-0e52-fed4-412ebfa36045.png">
<img width="1110" alt="2-2.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/fbd50e40-5e5f-05cf-fed2-aeb48724fc14.png">
これでモーションは完了です。

### 3. 重なる感じにする

時間に沿って重なる感じにするには、以下の二つの方法があります

1. パーティクルRを用いて、時間が経つごとにパーティクルを発生させる。
2. 一時保存RMを用いて、描画される画像を重ねていく。

1は、複雑な動きをさせたいときや、後々に一斉に移動させて行ったりする動きなどをつけるときに用いると良いでしょう。ただし、パーティクル毎にオブジェクトを描画するので、それなりの重さを覚悟しなければなりません。2は、単純に重ねる表現を再現かつ高速に表現したいときに用いると良いです。ただし、描画された画像に重ねていくため、一旦描画した後は動かせない、即ち後々に個々に動かすことができない、という点に留意してください。

今回、それほど複雑な動きはしないので、2を用います。

動画ファイルオブジェクトの上下のレイヤーに、それぞれ図形、フレームバッファを用意します。
上には、背景、四角形を。下にはフレームバッファを設置します。
<img width="353" alt="3-1.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/1ef42c0d-473f-a76e-844f-002957f58473.png">
> 複雑な設定になるので、なぜこのような設定をするのかという解説は、動画[^2]などを探してみてください。気が向いたらそれ用の記事も書くかもしれないです。

後々に木の背景と合成するために、先ほど設置した図形の背景をグリーンバック[^3]にします。
<img width="320" alt="3-2.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/3c6548e6-36da-9b32-9e05-e4fddd5818df.png">
図形の四角形のサイズを1[^4]に、一時保存RMの**`保存画像の読み込みEXT`**を付け加えます。読み込み先は、**1**です。
<img width="330" alt="3-3.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/f444164c-970a-1d3e-835b-bdd6e628a353.png">
フレームバッファに、一時保存RMの**`一時的に保存EXT`**を付け加えます。保存先は、**1**です。
後々に木の背景画像で覆うので、非表示するかはお任せします。
<img width="337" alt="3-4.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/d55e7bbc-5cca-f63c-4b7f-0fd0a3c71b66.png">
これで、重なる感じは表現できました。

次に、木の背景画像と合成させます。

木の背景画像の直下のレイヤーに、四角形を用意し、先ほど設定したのと同様にサイズ1、一時保存RMの**`保存画像の読み込みEXT`**を付け加えます。読み込み先は、**1**です。
<img width="335" alt="3-5.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/4c2b8da1-0402-e4fc-180a-23a9079141c6.png">
グリーンバックを、`クロマキー`で透過させます。
<img width="1090" alt="3-6.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/0b3a0a69-1937-733d-eca6-a5fae891fe4b.png">
これにて合成は完了です。

### 4. コマ落ちさせる

一応、この状態でもう写真は合成されている感じに表示されていますが、動かしたときに早すぎる速度で再生されてしまいます。
そのため、`時間制御`オブジェクトを用いて、コマ落ちさせます。

一時保存の部分などを覆うようにして、一番上のレイヤーに`時間制御`を設置します。
<img width="370" alt="4-1.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/deeeef63-732b-2e53-eb03-86b5fcaadd76.png">
3フレームほどコマ落ちさせます。
<img width="1168" alt="4-2.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/208ad642-0e57-dc2a-cdc9-422a673943ef.png">
これにて完成です！

後は、お好みでフレームバッファで拡大させたり、色調を調整したり、シネスコ風にしてみたり...
<img width="622" alt="4-3.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/812780f0-6df5-058b-708b-c49d9f8299db.png">

## 追記: 7/20 00:51

一時保存RMを用いるにあたり、画像のクリアについて書くのを忘れていました...

一時保存RMを用いるときは、一フレームだけ最初にクリアを適用したオブジェクトをおいてください。
<img width="399" alt="5-1.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/6bb78a3c-0e64-0d05-6c6e-1fabc9476971.png">
<img width="357" alt="5-2.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106440/3ec2a617-2145-cad2-8dad-a67baef768f3.png">

## 終わりに

やり方次第では色々応用できると思います。
質問はコメントもしくはTwitterまでどうぞー
[![完成動画](http://img.youtube.com/vi/GF9tVCNLeeY/0.jpg)](http://www.youtube.com/watch?v=GF9tVCNLeeY)

[^1]: Aviutl標準のアニメーション効果`震える`でも可能ですが、`個別シャドーB`にエフェクトがかかってしまい正常に動作しません。`震える`を使用する場合は、Aviutl標準の`シャドー`を用いると良いでしょう。
[^2]: 93さんの動画が一番わかりやすいと思います。(タイトルでは「一時保存EXT」と書いてありますが、「一時保存RM」と仕様は変わりません。というか同じです。)https://www.nicovideo.jp/watch/sm23106328
[^3]: 動画にグリーンを用いられてる場合は、ブルーバックなどにしてください。
[^4]: 図形を四角形にすると、Aviutlではアンチエイリアスがオフになります。また、サイズを1にすることで、極限まで軽量化を図っています。