【DaVinci Resolve】 Halftone(ハーフトーン)エフェクトを作る 【Fusion】
🐥 はじめに
みなさん、こんにちは。Mugです🐼
本記事では印刷物などで見られるHalftone(ハーフトーン)表現を、📽DaVinci Resolve の Fusion で再現する方法を紹介します
Halftone とは、小さなドットのサイズや密度を変化させることで階調(濃淡)を表現する技法です
- 暗い部分ほど大きなドット ⚫
- 明るい部分ほど小さな(またはドットなし)ドット ⬜
上記を踏まえて、今回は以下の3つのアプローチを紹介します 😤
- VariBlur ノードを使った Halftone
- Particle ノードを使った Halftone
- MugSimpleHalftone(Fuse)を使った Halftone ← オススメ💯💮
1 Variable Blurによるhalftone
VariBlur
を使用したhalftoneです
完成品
📺 参考動画(元ネタ)
1.1 ドット作成
Shape
等を使用してドットを作成し
Dot作成
ノード接続: sEllipse
→ sRender
Transform
のEdges
をMirrorに設定、サイズを縮小することで全面にドットを描画します
Edges
をMirrorに設定
ノード接続: sEllipse
→ sRender
→ Transform
サイズ調整後のプレビュー
Transform
のサイズを👆 のような見た目になるように調整(小さく)します
1.2 ドットぼかし
VariBlur
を使用して入力映像の明るさに応じたドットのぼかしを設定します
VariBlur
とはBackground
に接続したイメージを
Foreground
に接続したイメージの明るさに応じてボケさせるノードです
明るい部分ほど大きくボケます
VariBlur
プレビュー
ノード接続: VariBlur
(Background: Transform
, Foreground: Input Image
)
👆 少し見づらいですが、Foregroundの入力映像(左側)の明るい部分でドットのボケが強くなってます👀
📢 ボケが大きくなるほどドットが薄くなります
結果、明るいところはほとんどドットが見えなくなります
上記画像のようになるようにVariBlur
のBlur Size
を調整します
ただ、このままだと後々扱いにくいので
InvertColor
を使い入力映像を反転させ、 暗いところほどドットがボケる(=薄くなる) ように変更します
InvertColor
プレビュー
ノード接続: Input Image
→ InvertColor
→ VariBlur
(Foreground)
1.3 背景色設定
Background
をドットとマージします
これがhalftoneの背景色となります、好きな色を設定します🤩
Background
プレビュー
ノード接続: Merge
(Background: Background
, Foreground: Transform
)
1.4 コントラスト調整
ColorCurves
を使用してドットのコントラストを調整します
カーブ設定を👇下記画像のような形にしてコントラストを上げます
これは入力映像に合わせて調整します💪
ColorCurves
プレビュー
ノード接続: VariBlur
→ ColorCurves
→ MediaOut
これで完成です🎉
1.5 まとめ
全体像
ノード構成全体
👍 イイねポイント
- それっぽい見た目
- 処理が軽め
🤢 残念ポイント
- ノードの組み合わせが難しい
- 各パラメータの調整が非常に難しい
- ドットサイズ変化が急でラインが目立つ
2 Particleによるhalftone
Particle
を使用したhalftoneです
完成品
📺 参考動画(元ネタ)
2.1 Particle化
pImageEmitter
を使用して入力映像をparticle化します
ただ接続しただけでは何も表示されないため😑
pImageEmitter
の各パラメータを下記のように設定します
⚙️ Controlsページ ⚙️
- X Densityを0.1
- Y Densityを0.1
- Create Particles Every Frameにチェック✅
- Lifespanを1.0
⚙️ Styleページ ⚙️
- StyleをNGon
- NGon Sidesを12
- Sizeを2.0
🗒️設定値解説 🗒️
-
Density
はドット分割数です、大きくするとより細かなドットとなります
→ 大きくすればするほど処理が重くなります😵💫 -
Create Prticles Every Frame
,Lifespan
を設定することでParticleの生成を固定化します - ドット状になるようにStyleを設定します
-
Size
を2.0にすることである程度暗いところがきれいに塗りつぶされるように設定します
→ これはお好みで調整します👍
👇 正しく設定できれば下記のように少し解像度が下がったような映像になります👀
pImageEmitter
プレビュー
ノード接続: Input Image
→ pImageEmitter
→ pRender
pImageEmitter
Controlsの設定
pImageEmitter
Styleの設定
2.2 輝度に応じたドットサイズ設定
pCustom
を使用してParticleごとに異なるサイズのドットとなるようにします
各Particleの輝度を算出し、その輝度に比例してParticleサイズを設定します🤔
具体的にはpCustom
でParticleページのSizeを👇下記のように設定します
size * (1 - ((r * 0.299) + (g * 0.587) + (b * 0.114)))
この計算式は輝度が最大のときsize * 1.0
となります
size
とはpImageEmitter
のStyleで設定したサイズです、つまり2.0です
pCustom
プレビュー
ノード接続: pImageEmitter
→ pCustom
→ pRender
✂️ --- 中略 ---✂️
pCustom
ParticleページSizeの設定
2.3 ドット色設定
pCustom
を使用してParticleの色を上書き設定します
Red, Green, Blueに好きな色を設定します😍
今回は黒にします
pCustom
ParticleページRed/Green/Blueの設定
2.4 背景色設定
Background
をマージして背景色を設定します
これは好きな色を設定します😍
今回は白にします
Background
の設定
ノード接続: Merge
(Background: Background
, Foreground: pRender
)
2.5 コントラスト調整
BrightnessContrast
を使用して入力映像のコントラストを調整します
これは📽️映像を見ながら好みのドット感になるように設定します👀
BrightnessContrast
の調整
これで完成です🎉
2.6 まとめ
全体像
ノード構成全体
👍 イイねポイント
- きれいな円形ドット
- 正確なhalftone表現
🤢 残念ポイント
- ノードの組み合わせが非常に難しい
- 処理が非常に重い🐘🐘🐘
3 MugSimpleHalftoneによるhalftone
MugSimpleHalftone
を使用したhalftoneです
これは私が作ったエフェクトで、実はこの記事はこれを自慢するのが目的の記事です🤫
完成品
3.1 インストール
わたしのGitHubページからfuseファイルをダウンロードし、💻各OSごとの格納先に保存します
🗒️ Fuseファイル
📁 各OSごとのFuseファイル格納先
OS | Path |
---|---|
macOS | ~/Library/Application Support/Blackmagic Design/DaVinci Resolve/Support/Fusion/Fuses |
Windows | %appdata%\Blackmagic Design\DaVinci Resolve\Support\Fusion\Fuses |
Linux | /.local/share/DaVinciResolve/Fusion/Fuses |
参考動画
よくわからないー😭という方はこちらの動画でインストール方法を説明しているので
見ていただけるとわかってもらえるかなと思います😊
3.2 接続
インストールするとエフェクトのTools → Fuses → Mug
にMugSimpleHalftone
というものが追加されます
これを接続します👍
エフェクトパネルからの追加
Select Tool
(Shift + Space)からはMSHの省略名で検索できます👍
Select Tool
からの追加
ノード接続: Input Image
→ MugSimpleHalftone
→ MediaOut
3.3 調整
映像を見ながらMugSimpleHalftone
のインスペクタで各パラメータを調整します
直感的に設定できる(と思う)のでお好みで調整します😊
設定例
これで完成です😮🎉
3.4 まとめ
全体像
ノード構成全体
👍 イイねポイント
- きれいな円形ドット
- 正確なhalftone表現
- 非常に軽い動作
- 非常にシンプルなノード構成
- 直感的なドット調整
🤢 残念ポイント
- Fuseファイルのインストールが必要
🐔 おわりに
1, 2で紹介した方法で満足できなかったので自分でエフェクトを作りました
MugSimpleHalftone
は結構頑張って作ったので使ってもらえるとすごく嬉しいです☺️
ソースコードを公開しているのでFuseの参考にもどうぞ!
この記事が参考になった場合は、ぜひコメントやSNSでシェアしていただけると嬉しいです!
また、フィードバックや質問があればお気軽にお知らせください
Discussion