【AviUtl】「ディスプレイスメントマップ3D」スクリプトの話【基本編】
貴方です。
今回は、ゆうきさん作の「ディスプレイスメントマップ3D」というスクリプトについて話をしようかなぁと思います。
スクリプトのDLはこちらの動画の概要欄から→【https://www.nicovideo.jp/watch/sm20001035】
初めに
![本家](https://assets.st-note.com/production/uploads/images/44730865/picture_pc_6952492ff294838ce89e52dc7b016b48.gif)
標準ディスプレイスメントマップはこのように予め用意したマップ通りに画像等をX,Y方向に歪ませたりすることができるものでしたが、こちらのスクリプトでは、X,Y方向に加え、Z方向にも歪ませることができます。
![x変化本家](https://assets.st-note.com/production/uploads/images/44745982/picture_pc_de4d73a6f18e4724ae6479b842fdf9e9.png?width=1200)
![x変化](https://assets.st-note.com/production/uploads/images/44746000/picture_pc_918ecc3d9f5483ac1c5893ecbfcbb3c5.png?width=1200)
標準ディスプレイスメントマップ(上)とディスプレイスメントマップ3D(下)を同じマップ、同じ移動量でXを変化したもの。ディスプレイスメントマップ3Dは引き延ばされるような感じで変化するっぽいです。
基本的な使い方
まず、輝度テーブルにしたい画像やオブジェクトを用意し、そのオブジェクトに「ディスプレイスメントマップ3D - 輝度テーブル作成」をかけます。
![輝度マップ作成](https://assets.st-note.com/production/uploads/images/44731970/picture_pc_a284d4021b42f212785455edbab89dbf.png)
素材ID:輝度テーブルの番号です。輝度テーブルを呼び出すときにこの番号で指定します。
横分割数/縦分割数:この値が高いほど滑らかに歪みます。歪ませる対象のオブジェクトに複数の輝度テーブルを適用する場合は、輝度マップ同士の分割数を一致させて下さい。
モード:
0: データを新規作成します。
1: 既存データと平均します。...つまり、同じID同士の輝度テーブルを合成します。
表示:輝度テーブルにしたオブジェクトを表示するか否かを決めます。輝度テーブルにしたオブジェクトをそのまま歪ませるなら表示する、別オブジェクトを歪ませるなら表示しないでいいと思います。
次に、歪ませたいオブジェクトに「ディスプレイスメントマップ3D - 描画」をかけます。
![描画1](https://assets.st-note.com/production/uploads/images/44733681/picture_pc_fbc55f9f1c09c19959b20660ee945b4e.png)
X,Y,Z:どれくらい歪ませるかを設定します。
最後にデータクリア:画終了後に、輝度テーブルをクリアします。下のレイヤーのオブジェクトでも同じデータを使用する場合は、チェックを OFF にして下さい。...つまりチェックを入れると下の画像の赤く囲まれている部分以外のオブジェクトが、チェックを入れたオブジェクトが使った輝度テーブルでは歪まなくなります。(「歪ませたい画像」は描画をかけて、最後にデータクリアにチェックしてあるオブジェクト、「輝度マップ」は「歪ませたい画像」に適用した輝度テーブルです)
![データクリア](https://assets.st-note.com/production/uploads/images/44735500/picture_pc_34c106c15f7c05e7d006cb69cde21b58.png)
![描画2](https://assets.st-note.com/production/uploads/images/44734475/picture_pc_7e335c042c64b7c35627fdaa00cc256d.png)
X,Y,Z素材ID:参照する輝度テーブルの番号です。使いたい輝度マップの番号を書いてください。X,Y,Zで別々のテーブルを適用することができます。
つなぎ目補正:つなぎ目を消すために、分割した画像を、少し大きく描画します。...歪ませるとオブジェクトに穴が開いてしまうことがあるのですが、その部分を消すことができます。ただし、画像がモザイクをかけたような感じになってしまうので、ただ大きくすればいいというものではないです。
3Dつなぎ目補正:ONの場合、つなぎ目を3Dで補正します。OFFの場合、XY平面で補正します。...Zを歪ませる、後述する、「ディスプレイスメントマップ3D - 座標の回転」を使用する場合はチェックを入れておいたほうがいいと思います。
描画サンプル
![ノイズ](https://assets.st-note.com/production/uploads/images/44747283/picture_pc_8f5e99501f30cdba3ded3c3f6c305646.png?width=1200)
・使用した輝度テーブル
![画像11](https://assets.st-note.com/production/uploads/images/44747213/picture_pc_edec80a34a13654556e09e7e2819a8fc.png?width=1200)
・元画像
![x変化](https://assets.st-note.com/production/uploads/images/44746994/picture_pc_df2104326e013396feea0c00ecf401b9.png?width=1200)
・X変化
![y変化](https://assets.st-note.com/production/uploads/images/44747087/picture_pc_646cdcc8a7f7e83030c893c0e75ebc79.png?width=1200)
・Y変化
![z変化](https://assets.st-note.com/production/uploads/images/44747103/picture_pc_5b6b7051a37bdb66539c8aef373bcd32.png?width=1200)
・Z変化(カメラの位置を変えてある、シャドーなし)
使用上の注意
![注意1](https://assets.st-note.com/production/uploads/images/44747871/picture_pc_eb86b4dd96dd088dc4c02d642e4843ef.png)
「ディスプレイスメントマップ3D - 描画」の下にある効果は一切適用されません。何かをかけたい場合はその上に置いてください。
ディスプレイスメントマップ3D - 移動
つなぎ目補正と3Dつなぎ目補正が無いだけで「ディスプレイスメントマップ3D - 描画」と同じです。
「ディスプレイスメントマップ3D - 描画」で使った輝度テーブルとは違う輝度テーブルを同時に使いたいって時とかに使えばいいと思います。
ディスプレイスメントマップ3D - 座標の回転
![回転変形](https://assets.st-note.com/production/uploads/images/44748651/picture_pc_5d8d52141a4a2fd40bfba326ef4e68e6.png)
X,Y,Z軸回転:X,Y,Z軸で回転変形をします。これは見てもらったほうが早いかなぁ。
※使用した輝度テーブルと元画像は描画サンプルのものと同じです
![x回転](https://assets.st-note.com/production/uploads/images/44749092/picture_pc_d0fcced89f9d39a863f3b2d3182d1bb6.png?width=1200)
・X軸回転(カメラの位置を変更してある、シャドーなし)
![y回転](https://assets.st-note.com/production/uploads/images/44749184/picture_pc_4703c3fc7424be19f3cf9e28be7181b4.png?width=1200)
・Y軸回転(カメラの位置を変更してある、シャドーなし)
![z回転](https://assets.st-note.com/production/uploads/images/44749202/picture_pc_72e4c84007c3828b11b29766371b2928.png?width=1200)
・Z軸回転
ディスプレイスメントマップ3D - 座標の回転(中心)
使い方が判明しました
座標の回転(中心)を座標の回転の上に置くことで、回転に中心を変化させることができるもののようです。
恐らくこういうことなので参考までに↓
https://twitter.com/who_watakushi/status/1357574916220932097?s=21
追伸:この部分は、もう少し色々試したら書き足します
このスクリプトを使ったもの
...と称した宣伝
![画像18](https://assets.st-note.com/production/uploads/images/44750057/picture_pc_d317d6158b02b9f1bc502503978e60fe.png?width=1200)
・チェス駒(クイーンのつもり)
上の方の波打ってるところで使っています。
【PVSF2020R】Protoflicker【AviUtl Only】
ちょこちょこ使っています(説明放棄)
( ・∇・)ノシ