Transform Input Shader

Node Type: Transform/Warp Shader

ノード説明と目的:

『Transform Input Shader』を使用すると、他のシェーダのテクスチャ座標を変更してその出力を変換する事が出来ます。変換は、平行移動(移動)、回転、拡大縮小(サイズ変更)、が出来ます。また、テクスチャ座標を異なるテクスチャスペース(例えば、ワールドスペースや非配置スペース)に再設定する事も出来ます。上流(メイン入力接続経由)にあるすべてのシェーダは、それらのシェーダがテクスチャ座標を使用するようにプログラムされている限り、『Transform Input Shader』の影響を受けます。ほとんどのシェーダはテクスチャ座標を使用しますが、以下にいくつかの例外があります。 『Transform Input Shader』は、上流のシェーダから数値を求める前にテクスチャ座標を変更する事によって機能します。上流のシェーダは修正されたテクスチャ座標を引き受けるため、それらが生成する形状やテクスチャはスペースに変換されます。

『Transform Input Shader』と『Transform Merge Shader』の違いは次の通り:
  • 『Transform Input Shader』は、"Main input"入力端子に接続する直上のシェーダと、さらに上流にあるシェーダを変換します。
  • 『Transform Merge Shader』は、"Shader"入力端子に接続する直上のシェーダと、その入力のさらに上流にあるシェーダ(「サイドブランチ=側枝」)を変換します。サイドブランチと"Main input"をマージしますが、"Shader"から上流のサイドブランチだけが変換されます。

例外

設定によっては、一部のシェーダは常に『Transform Input Shader』/『Transform Merge Shader』の影響を受けません:
  • 『Distribution Shader v4』。"Altitude key"が「Final position」に設定されている場合、テクスチャスペースではなくワールドスペースが使用されるため、『Tranform Input Shader』/『Transform Merge Shader』は効果がありませんが、マスクとして使用した場合は変換されます。
  • 『Geog Image Map Shader』。"Georeference"が有効になっている場合、テクスチャスペースではなくワールドスペースが使用されるため、『Tranform Input Shader』/『Transform Merge Shader』は効果がありませんが、マスクとして使用した場合は変換される可能性があります。
一部のシェーダは、『Tranform Input Shader』/『Transform Merge Shader』の影響を受けませんが、マスクとして使用する場合は以下のようになります:
  • 『Compute Terrain』、『Tex Coords from XYZ』。これらのノードは下流に続くすべてのディスプレースメントのテクスチャ座標をリセットします。
  • 雲層の『Cloud Layer v2』、『v3』、『Easy Cloud』。これらはワールドスペースのボリューメトリックオブジェクトですが、変換はこれらの入力に別々に適用する事が出来ます。
  • 『Constant Shader』は、どこでも同じ出力を生成します。
  • 『Distance Shader』は、ワールドスペースを使用します。
  • 『Heightfield Shader』は、マスクは変換されるかもしれませんが、ワールドスペースを使用します。
  • 『Lambert Shader』は、どこでも同じアルベドを使用します。
  • 『MOLA Map Shader』は、マスクは変換されるかもしれませんが、惑星上の位置を推測するために非変位の法線を使用します。
  • 『Planet Atmosphere』は、ワールドスペースのボリューメトリックオブジェクトですが、変換は入力に個別に適用する事が出来ます。
  • 『Shadow Catcher Shader』は、ライティングの影響のみを受けます。
  • 『Twist and Shear Shader』は、ワールドスペースを使用します。
  • 『Visualise Normal』は、法線は『Tranform Input Shader』/『Transform Merge Shader』よって変更されません。

設定

Use world space (final position) ワールドスペースを使用(最終位置) シーン全体を基にした座標を使用します。
例えば『Image map shader』を使った平面投影モードを行おうとした時、シェーダは自動的にワールドスペースに切り替わらず、2Dではなく3D座標と認識しUVによって定義されたテクスチャ座標で動こうとします。『Transform Input Shader』をシェーダの下流に配置し、"Use world space"をチェックする事で、新しいテクスチャ座標を生成し、テクスチャ座標がワールドスペースから生成されたオブジェクト(例えば『Compute Terrain』ノードの後の地形)で作業している場合、平面投影モードで期待どおりに機能します。
ワールドスペースを自動的に使用しないのは、ワープシェーダやテクスチャ座標を変更するだけの他の変換を使用してそれらに影響を与える事が出来るからです。
"final position(最終位置)"とは、最終的に移動した座標を意味し、『Planet』ノードに入る手前まで処理した結果状態です。
Use undisplaced space (position in geometry) 非変位スペースを使用(ジオメトリ内の位置) 位置情報に沿ったスペースを使用するため、ディスプレースメントで変位されない惑星の正確な位置に合わせます。
Translate 移動 X、Y、Z方向に対象を移動します。
Rotate 回転 X、Y、Z軸のそれぞれを0-360度で回転します。
Scale スケール X、Y、Z方向に対象の大きさを変更します。