MorphDots

* anm

種類
--

MorphDotsとは、anm拡張子のAviutlスクリプトの１つである。

## ■ 初めに ■

個別オブジェクトの画像をドット化し、オブジェクト同士のモーフィングもどきを行うアニメーション効果です。

@MorphDots.anmをscriptフォルダーに入れてAviUtlを再起動、アニメーション効果からMorphDots[Main]を呼び出してください。
MorphDots[Main]以外の3つを[Main]より上に設置するとそれぞれ追加設定が使えます。
追加オプションの順番は問いません。

* MorphDots [Option]
* MorphDots [Depth]
* MorphDots [Noise]
* MorphDots [Main] <-- 描画する本体は一番下

全ての機能を使用するために必須な追加外部モジュールがあります。

* ■ rikky\_module.dll
* ■ easing.lua

2つともexedit.aufと同じ場所に置くとすると安心です。

* Shape
	+ 図形です。背景は選択できません。六角形を選択すると隙間を埋めるような調整が入ります。
* └ [size/line]
	+ 図形のサイズと線幅をテーブルで指定します。{20,2}
	+ 2つ目の要素に"t"を入力した場合はテキストを呼び出します。 {20,"t"}
	+ └ 3つ目の要素はフォント指定です。{20,"t","メイリオ"}
	+ └ サイズが0だと直前までに呼び出されていたフォントを使用します。ただしサイズも引き継がれます。{0,"t"}
	+ └ 4つ目の要素にテキストを入れると直接文字を指定できます。{20,"","メイリオ","あいうえお"}
	+ └ スペースかカンマ(,)で 区切ると点毎に区切った文字を呼び出します {20,"メイリオ","あ,い,う え,おかきく"}
* Gap[w/h]
	+ 点描画の間隔をpixel単位で指定します。数値だと縦横同じ、テーブルだと横縦個別に指定できます。
	+ Borderingは縦横の概念は有りません。(テーブルだと一つ目の要素のみ仕様)
* Order[in/out]
	+ 点の移動するパターンを選べます。マイナスなら順番が反転します。
	+ テーブルで二つ指定 ({1, 2}等) すると移行開始と終了で別のオーダーを指定できますが
	+ 線の描画する場合は配置が移動後に変わるので残念な結果となります。
	+ 0: 処理順 (右から左下へ / 輪郭抽出順)
	+ 1: 右から
	+ 2: 上から
	+ 3: 輝度
	+ 4: R
	+ 5: G
	+ 6: B
	+ 7: ランダム
* Ease(0/41)
	+ 点の移動にイージングをかけます。番号かテキストで指定します。 (24 == "24" == "inOutExpo")
* Orginalpos
	+ 通常は中央に固定さ入れているオブジェクトが元々あった位置に移動します。
* └ multiDraw
	+ 個別オブジェクトを複数同時に表示します。
* DrawLine
	+ 1で線で結びます。アルゴリズムが全然わからん！
	+ 2だと2点の色を補間します。
* └ width
	+ 線幅です。小数点以下も使えます。
* └ [dist/fade]
	+ 線を結ぶ距離と、フェードする距離をテーブル指定します。
	+ 空欄だと静止状態に合わせた距離に自動で設定されます。(ただし移行時に重くなりやすい)
* └ maxnum
	+ ドット一つ毎に描画する線の数を制限します。
	+ 1の場合は巡回方法固定で点の描画順につなぎます。
	+ 2以上は接続距離条件を満たすまで全ての点を線形巡回するので距離や数の設定では描画されない方が重くなる場合があります。(特にランダムの場合に顕著)
	+ 300などの大きな値を指定し、距離設定で制限した方がきれいになりやすいです。

* Lineplog
	+ 線の進捗度のオフセットです。
* Linedelay
	+ 線の進捗を点毎にずらします。
	+ 接続が成立する点の数で順番が変化してしまうので進捗が半端だとちらつきます。
* BlendOrg
	+ 元画像を表示します。
* Extrude
	+ Z軸複製の間隔です。

* Rotation
	+ 個別オブジェクト使用時、グループ制御で回転するような動作になります。
* ドット交互
	+ 点を交互にずらします。※Bordering未使用の場合のみ。
* Z-Copies
	+ Z軸方向に複製する数です。
* ShuffleIndex
	+ 個別オブジェクトのインデックスをシャッフルします。
	+ ※ドットの代わりにテキスト表示する設定だと正しく動きません。
* billboard
	+ ドットがカメラを常に向くようになります。
* Borderoffset
	+ Bordering使用時に色を取得する位置をずらします。
* └ position
	+ 点の位置も合わせてずらします。使う機会はなさそうですが。
* RandomCol
	+ 移行時に色をランダムにします。本体のランダム設定に依存します。

* Focal
	+ 焦点を前後させます。
* Distance
	+ 焦点の範囲を広げます。
* Fade
	+ 焦点の外からフェードする距離です。
* Blur
	+ ぼかしの強度です。焦点の範囲外になると動作します。
* focuslock
	+ 焦点距離がカメラ移動とは無関係になり目標に固定されます。但しFocalで前後します。

* Lensblur
	+ レンズブラーを使用します。重いので覚悟。
* FadeAlpha
	+ 焦点設定に合わせて透明度が変化します。
* FadeZoom
	+ 焦点設定に合わせて拡大率が変化します。
	+ 本体側のLine設定が2だと線も拡大縮小します。
* NoiseMouunt
	+ 深度を使ってノイズの強度を変更します。
	+ NoiseオプションのAnmplitudeに加算される形になります。
* Far[dst/fade]
	+ Focalで設定した位置から奥側の焦点距離を設定します。
* Far[dst/fade]
	+ Focalで設定した位置から手前側の焦点距離を設定します。

### ■ MorphDots [Noise]

パーリンノイズを使用したエフェクターです。本体の移行時に発生するノイズの設定を変更します。Amplitudeを上げるといつでも使えます。単体で通常のオブジェクト(個別オブジェクト)に使用できます。

* Scale
	+ Randomがマイナス時に使われるノイズのスケールを変更します。値が大きいと細かくなります。
	+ ダイアログでXYZ個別にスケールを変更出来ます。
* lacunary
	+ サブノイズの細かさを変更します。
	+ ダイアログのoctavesが1以上の場合に使えます。
* gain
	+ サブノイズの影響度です。0だとoctavesも0になります。
* Amplitude
	+ ノイズの強度を上げます。

* Amount
	+ pos :位置情報の影響度
	+ color :色情報の影響度
	+ alpha :透明度の影響度
	+ zoom :拡大率の影響度
* Noise
	+ scale :ノイズの基本スケールを指定します。
	+ octaves :サブノイズの追加数です。ノイズの細かさはLacunarityで制御。数値を上げるとディティールを追加できますが重たくなります。
	+ wind :時間移動付きでノイズをスクロールします。
	+ UVgloal :ノイズ空間の座標を画像の縦横からワールド座標へ変更します。
	+ Self :このスクリプト単体で動作する個別オブジェクト用ノイズエフェクターになります。colorは使えません。