はじめに
先日きれいなノイズを作成する記事を書きました。今回はそのノイズを使ってDissolve Effectなるものを作成します
Dissolve Effectは画像から画像へ遷移させる手法の一つで、下記はDissolveエフェクトによる遷移の途中経過を画像として並べた例です
参照元
ディゾブルマテリアルで表現する立体魔法陣 (UE4 VFX Art Dive)
www.youtube.com
事前準備
- 遷移元の画像と遷移後の画像とノイズ画像を用意。テストの為このような画像を用意。
- すべて同じサイズである必要があります。今回サンプルとして使うのは3枚とも 1080x1080px の画像です。
- 上記は見本のため小さくしています。サンプルに使用した画像はすべてこの記事最後のメモに貼っています。
ノード設定手順
- Blenderを起動
- Compositing を開く
- Use Nodesにチェックを入れて、Render Layersを消す
- Input → Imageを3つ配置してそれぞれ用意した画像を開く
- Color → Mix を配置
- 下の Image には遷移後の画像のImageを接続
- 上の Image には遷移元の画像のImageを接続
- Fac にはノイズのImageを接続
- 出力を Composite ノードの Imageに接続
- Output → Viewer を配置
- Mix の結果を接続
- Converter → ColorRamp を配置
- ノイズとMixの間に接続
- 補間は Constant を選択
- 最終的なノード設定
- 見辛かったのでViewerを V 押して縮小していますが、デフォルトならもう少し大きな画像が表示されていると思います
- Viewerは V で縮小、 Alt + V で拡大
使用方法
- ColorRampの右の白を左にスライドさせると画像が遷移します
なのでこのピンにキーフレームを設定すればアニメーションさせることができます。例えば48フレームで遷移させる場合
- 最終フレームを48 に設定
- プレイヘッドを1に移動
- 右側のピンを選択
- Position が 1であることを確認後 i キーを押してキーフレームを挿入
- プレイヘッドを48に移動
- Position を 0に設定して iキーを押してキーフレームを挿入
完成です。後はレンダリングしてみましょう
- Outputプロパティを選択
- Resolution X と Y は用意した画像に合わせる
- File Format はどれでもいいですが、すぐに確認できる FFmpeg Video で試します
- Ctrl + F12 または Render → Render Animation を実行
結果
しかし実は最初に例として示していた内容とは少し違います。違いわかりますか?(↓最初の例)
最初の例は遷移する境目が黒くなっているんです。境目がわかりやすくてかっこいいんです。という事でこちらの方法です
ノード設定手順2 (境目を黒くする)
前のノード設定の続きで行っていきます。
- ColorRampを配置
- Fac インプットには ノイズの Image を接続
- 補間は Constant を選択
- Mix ノードを配置
- 下の Image は黒色を設定
- 上の Image には遷移元の画像のImageを接続
- Fac には新しく配置した ColorRamp を配置
- 出力を Mix ノードの上の Image に接続
使用方法2
新しく配置した ColorRamp の右の白を左にスライドさせると Mix で設定した色(黒)になります。
最初に遷移させるアニメーションを作成したとき、1フレームから48フレームで完結するようにしました。こちらはそれよりも1フレーム早い 0フレームから 47フレームで完了するようにキーフレームを打てばよいだけです。
最後に
なぜこうなるのか原理などは参照元の動画以上にわかりやすく説明できる自信がないのでぜひ見てみてください。😅
Unreal engine4関連の動画ですがShader Editorにある程度詳しければBlenderに転換して考える事もできると思います。😃
この記事で使った画像です。Windowsなら右クリックから名前を付けて保存して使ってください。