【SD】歪み機能を作ろう
今回はSubstanceDesignerで歪み機能を
Verは2018.2.0です
【どういう処理を作るか】
ワープ系での歪ませるものだと、若干イメージが湧きにくいので
エフェクトを作るツールでよく見る、RとGの情報をそれぞれX,Yに置き換えて動かす処理を作ります。
ノードの全体図はこんな感じになります。
パラメータはFloat型のこの一つのみになります。
移動量の量を調整する用のパラメータです。
インプットノードは、グレースケールとカラースケールを一つづつ。
グレースケールは、歪ませる元の情報で、カラースケールは、歪ませるのに使用する情報です。
チャンネルのこのノードを使い、RGBAを分離させます、今回はRとGしか使いません。
まずは、Rチャンネルの0.5を越える数値を持ってきます。
今回はpixel Processorで処理します。
Pixel Processorの中身はこうなっています。
非常に単純な計算です、まず0.5を引き算する事で、移動量として使わない部分が全て0以下になります。(-0.5~0.5)
その後、2倍にすることで、-1~1になります。
Pixel Processorの外に出ると、0~1に切り取られるので、これをそのまま、右方向への移動にします。
あとは、Directional Warpで、角度を180に設定して右方向にしてから
※処理が分かりやすいように、ベースと、歪みに使うノイズを表示しています。
※処理がわかりやすいように、Levelの強さを50に設定しています。
Intensityには、このノード自体に作ったLevelを入れておきます。
これで右方向は完了です。
あとは、これを各方向にしていくだけです、次は左方向
Pixel Processorの中身はこうなりました。
赤枠が追加したノードです。
これにより、0~1の数値が反転した状態になりました。
後は、角度を変更して終了です。
次は上にずらす処理です。
右にずらした処理を複製して、RではなくGチャンネルから情報をとってきた後に。
DirectionalWarpで上方向に設定します。
上方向を作ったのと同じ容量で、左に移動している処理を複製して、
下方向へ移動させるようにします。
最後に、この移動を全て繋げれば完成です。
今回はここまでです。
今回はちょっとした小ネタみたいになりましたが、エフェクトを作っている方には馴染み深い処理かなと思いますので、使っていただけたら幸いです。