Mapping (マッピング)ノード

Mapping (マッピング)ノードは、平行移動、回転、およびスケーリングを適用し、入力ベクトルを変換します。

../../../_images/render_shader-nodes_vector_mapping_node.png

Mapping ノード。

入力

ノードの入力は動的です。特に、 Location 入力は、 Texture および Point ベクトルタイプでのみ使用できます。

Vector(ベクトル)

変換されるベクトル。

Location(位置、場所)

各軸の移動量。

Rotation(回転)

各軸の回転量。XYZ順。

Scale(スケール)

各軸のスケール量。

Properties(プロパティ)

Vector Type (ベクトル タイプ)

ノードは、入力ベクトルのセマンティックタイプに応じて、異なる方法で変換を適用します。

Point(ポイント)

このベクトルタイプの場合、ノードは単純な変換を実行します。

テクスチャ座標の変換は、UVマップの変換に似ています。たとえば、テクスチャ座標を正のX軸に沿って移動すると、評価されたテクスチャは負のX軸に移動します。これは、UVマップを移動した場合と同じです。同様に、テクスチャ座標を拡大することは一定の縮尺で縮小することを意味します。したがって、テクスチャ座標を変換すると、評価されたテクスチャに反対の効果があるように見えます。

変換の順序は次のとおりです:Scale --> Rotate --> Translate、つまり、

  • 移動は、ローカルの回転軸に沿って入力を移動します。

  • 回転は、空間の原点を中心に入力を回転させます。

  • スケールは、グローバル軸に沿って入力をスケーリングします。

Texture(テクスチャ)

このベクトルタイプの場合、ノードは逆変換を実行します。

テクスチャ座標を逆変換すると、 Point タイプとは異なり、評価されたテクスチャ自体が変換されます。たとえば、正のX軸に沿ってテクスチャ座標を平行移動すると、評価されたテクスチャは期待通り正のX軸に移動します。同様に、テクスチャ座標を拡大すると、評価されたテクスチャが期待通り拡大されます。

変換の順序は次のとおりです。 Translate --> Rotate --> Scale、つまり、

  • 移動は、グローバル軸に沿って入力を移動します。

  • 回転は、並進ベクトルを中心に入力を回転させます。

  • スケールは、ローカルの回転軸に沿って入力をスケーリングします。

Vector(ベクトル)

このベクトルタイプでは、 Point 変換が実行されますが、平行移動はありません。

Normal(ノーマル)

このベクトルタイプの場合、ノードは変換の逆転置を実行し、結果を正規化します。この変換により、不均一なスケーリング後の正しい法線が保証されます。したがって、このタイプは法線を変換するときに使用します。

出力

Vector(ベクトル)

変換後の入力ベクトル。

../../../_images/render_shader-nodes_vector_mapping_example.png

Mappingノードの例。