概要
接続した画像、またはインスペクターで選んだマップ素材を押し出しマップとして使い、元画像のピクセル位置をずらすノードです。水面のゆらぎ、熱で揺れる空気、へこみ、布や模様の歪みに使えます。
マップの色や明るさが、どの場所をどれだけ動かすかを決めます。
使い方のポイント
- 入門は
mode=Directional+direction_mode=ExactAngle:noise_generateを map につなぎ、direction_amountを2〜8から試す。指定角度どおりに水面・熱気・旗のはためきを作りやすい - Directionalではマップ値0.5が無移動、白(1.0)が角度の正方向、黒(0.0)が逆方向。 白・黒での移動距離は設定量の半分になる
direction_mode=AxisScaledは従来互換。amount_xとamount_yを別々に掛けるため、 2つが異なる場合は実際の移動角度がangleからずれる。正確な角度ではdirection_amountだけを使う- アニメさせるなら map 側を動かす: ノイズの
seedをフレームで切り替える、 またはスクロールするマップを使うと、ゆらぎが時間変化する sampling = Nearest(既定)がドット絵向け。Linearは中間色が出るが、 半透明の境界はpremultiplied alphaで補間するため、透明ピクセルのhidden RGBによる 暗い縁や色付きの縁を抑えられる- 地形に沿って「流す」なら
slope_blur、一定方向へ「引きずる」ならdirectional_warp、位置を「ずらす」ならこのノード、と使い分ける
よくある失敗
- 端に伸びた縞が出る: 画像端の外を読んでいる。タイル素材なら
wrap_x/yON、 単発素材ならcanvas_resizeで余白を作っておく - VectorRGで思い通りに動かない: 赤=左右・緑=上下の2チャンネル制御(中級向け)。 まず Directional で感覚を掴む
- 指定角度と実際の方向が違う:
direction_mode=AxisScaledでamount_xとamount_yが異なると起きる。角度を厳密に合わせるならExactAngleを選ぶmap入力に画像をつなぐと、その画像が優先されます。mapをつながない場合は、Map Assetで選んだ素材を使います。
使用例
Map Assetでsoft_warp_01を選び、ゆるい揺らぎを作る。map入力に別ノードのノイズ画像をつなぎ、手続き的に揺らぎを変える。mode=Directional、direction_mode=ExactAngle、source=OKLCH-L、angle=0で、 白い部分を右、黒い部分を左へ押し出す。VectorRGとvector_warp_rg_01で、赤と緑のマップから上下左右に細かく歪ませる。- タイル素材を歪ませる時は
wrap_x/wrap_yをオンにし、端から外へずれたピクセルを反対側から読む。
関連ノード
directional_warp— 一方向へ引きずるワープslope_blur— 高さの傾きに沿って流すnoise_generate— マップの定番供給源region_warp— リージョン単位のゆがみ