Back to Node List

Surface Composite

surface_composite

Places one Surface over another and composites color, maps, material IDs, and face IDs together.

Draft
Guide available
The node name and summary are available in English. Port, parameter, and article details are currently shown in Japanese.

Input Ports

NameTypeDescription
下地
base
Surface
Required
下地になるサーフェースです。
重ねるサーフェース
overlay
Surface
Required
上に重ねるサーフェースです。
マスク
mask
Image
重ねる場所を制限する任意のマスクです。

Output Ports

NameTypeDescription
サーフェース
surface
Surface
合成したサーフェースです。
プレビュー
preview
Image
見た目の画像を確認するプレビューです。

Parameters

NameTypeDefaultRangeDescription / Options
ブレンド
mode
Enum
Normal

重ねるサーフェースの見た目の色をどう混ぜるかです。

  • 通常Normal
    重ねるサーフェースの色をそのまま載せます。
  • 乗算Multiply
    下地を暗くします。影や汚れ向けです。
  • スクリーンScreen
    下地を明るくします。光やハイライト向けです。
  • オーバーレイOverlay
    コントラストを強めます。
  • 加算Add
    色を加算します。発光表現向けです。
  • 減算Subtract
    上の色を差し引いて暗くします
  • 差の絶対値Difference
    2色の差を取り出します。違い比較や特殊効果に有用
  • 比較(暗)Darken
    チャンネルごとに暗い方の色を残します
  • 比較(明)Lighten
    チャンネルごとに明るい方の色を残します
  • ソフトライトSoftLight
    やわらかいコントラスト。淡い陰影や色付けに有用
  • ハードライトHardLight
    強いコントラスト。はっきりした光と影に有用
  • 覆い焼きColorDodge
    下の色を強く明るくします。強い光の表現に有用
  • 焼き込みColorBurn
    下の色を強く暗くします。深い影の表現に有用
不透明度
opacity
Float
10–1 / step 0.01

重ねるサーフェース全体の強さです。

オフセットX
offset_x
Int
0-4096–4096

重ねるサーフェースを横にずらす量です。

オフセットY
offset_y
Int
0-4096–4096

重ねるサーフェースを縦にずらす量です。

マップの扱い
map_policy
Enum
AllMaps

見た目以外の高さ・法線・発光なども一緒に合成するかです。

  • 全マップAllMaps
    見た目、高さ、法線、発光などをまとめて合成します。
  • 見た目だけAlbedoOnly
    見た目の色だけを合成し、他のマップは下地のまま残します。
高さの合成
height_mode
Enum
OverlayMap

重ねるサーフェースが高さマップをどう変えるかです。

  • 重ねるマップを使うOverlayMap
    重ねるサーフェースの高さマップを、そのまま下地になじませます。従来の挙動です。
  • 下地より高くするRaised
    重ねた部分を下地より高くします。壁に窓枠、床に敷石を付ける時に向きます。
  • 高さを足すAdd
    下地の高さに、重ねるサーフェースの高さを足します。
  • 高い方を使うMax
    下地と重ねるサーフェースを比べて、高い方を使います。
重ねる高さ
height_offset
Float
0-1–1 / step 0.01

重ねた部分を下地からどれくらい出すかです。窓枠や装飾を少し手前に出したい時に使います。

重ねる高さの強さ
overlay_height_scale
Float
10–4 / step 0.01

重ねるサーフェースが持つ高さマップをどれくらい効かせるかです。

高さから法線を作り直す
rebuild_normal_from_height
Bool
false

合成後の高さマップから光の当たり方用の法線マップを作り直します。出っ張りのハイライトを合わせたい時に使います。

IDの扱い
id_policy
Enum
OverlayVisible

素材IDと面IDをどう合成するかです。

  • 重ねた場所を使うOverlayVisible
    重ねたサーフェースが見えている場所では、素材IDと面IDも上書きします。
  • 下地を残すKeepBase
    素材IDと面IDは下地のまま残します。
マスクの見方
mask_source
Enum
Alpha

マスク画像のどの値で重ねる強さを決めるかです。

  • アルファAlpha
    透明度で重ねる場所を決めます。
  • 明るさLuminance
    白黒の明るさで重ねる場所を決めます。
  • Red
    赤チャンネルで重ねる場所を決めます。
  • Green
    緑チャンネルで重ねる場所を決めます。
  • Blue
    青チャンネルで重ねる場所を決めます。
左右ループ
wrap_x
Bool
false

重ねるサーフェースの左右端がつながっているものとして読みます。

上下ループ
wrap_y
Bool
false

重ねるサーフェースの上下端がつながっているものとして読みます。

概要

2つの Surface を重ねて、1つの Surface にまとめるノードです。

画像だけを重ねるのではなく、高さ、法線、発光、ざらつき、素材ID、面IDも一緒に合成できます。たとえば、床のサーフェースに汚れパーツを重ねたり、壁の上に金属パーツを置いたり、アイソメ面の一部に別の面パーツを足したい時に使います。

出力サイズは常に base のサイズです。overlayoffset_x / offset_y で置く位置を決めます。

使用例

  • Grid Pattern で作った床サーフェースを base にし、汚れや水たまりのサーフェースを overlay にして重ねる。
  • Surface Plane で作った壁に、別の小さな金属パーツのサーフェースを重ね、id_policy=OverlayVisible で金属IDも一緒に入れる。
  • 壁に窓枠を貼る時は、height_mode=下地より高くするheight_offset=0.05〜0.15rebuild_normal_from_height=ON にする。Surface Light Preview で落ち影を強めると、窓枠が壁より少し出ているように見えます。
  • 見た目だけステッカーのように貼りたい時は、map_policy=AlbedoOnlyid_policy=KeepBase にする。
  • タイル素材として端をまたいで重ねたい時は、wrap_xwrap_y をONにする。

確認方法

  1. Image to Surface を2つ作り、1つを base、もう1つを overlay に接続する。
  2. offset_x / offset_y を動かして、重なる位置が変わるか確認する。
  3. Surface プレビューの AHIDF を切り替え、見た目以外のマップやIDも同じ場所で重なっているか確認する。
  4. height_mode=下地より高くするheight_offset=0.1 にして、H プレビューで重ねた場所だけ明るくなるか確認する。
  5. rebuild_normal_from_height=ON にして、N プレビューで出っ張りの端に色変化が出るか確認する。
  6. Surface Light Preview につなぎ、発光や法線、面IDを含むサーフェースとして扱えるか確認する。
Back to Node List
Surface Composite — PixPipeline Node Reference