ノード一覧に戻る

画像から高さマップ

height_from_image

普通の画像から高さマップを推定します。シルエットモードは輪郭から内側ほど高く膨らませ、明るさ・不透明度モードはピクセル値をそのまま高さとして読みます。

下書き
解説あり

入力ポート

名前説明
画像
input
Image
必須
高さマップを推定したい画像です。

出力ポート

名前説明
高さ
output
Image
推定した高さマップです。白いほど高く、黒いほど低くなります。「画像からサーフェース」の高さ入力につなげます。

パラメータ

名前既定値範囲説明・選択肢
読み取り方
mode
Enum
Silhouette

画像のどこから高さを読み取るかです。

  • シルエットSilhouette
    不透明な形を膨らませます。輪郭から離れて中心に近いほど高くなります。ベタ塗りのドット絵で使えます。
  • 明るさLuminance
    明るいピクセルほど高くなります。陰影が既に塗られている絵で使えます。
  • 不透明度Alpha
    不透明なピクセルほど高くなります。
立体の形
profile
Enum
Round

輪郭から中心へ向かう盛り上がり方です。

  • 丸いRound
    風船のように丸く膨らみます。キャラクターや柔らかい物に向きます。
  • とがるLinear
    円錐のように直線的に盛り上がります。結晶やトゲに向きます。
天面の平らさ
plateau
Float
00–0.9 / step 0.05

中心側を最大高さで平らにします。レンガや箱のような形に向きます。

反転
invert
Bool
false

高低を入れ替えます。くぼみや穴を作る時に使います。

技術詳細

  • Silhouette: アルファシルエットに chamfer 3-4 距離変換をかけ、「縁から遠いほど高い」高さ場を作る。Round は半球の断面カーブ、Linear は円錐状。plateau は中心側を最大高さで頭打ちにする
  • Luminance: ピクセルの輝度をそのまま高さとして読む。陰影が既に塗られた絵の再利用向け
  • Alpha: 不透明度をそのまま高さとして読む
  • 透明ピクセルは透明のまま出力される

使用例

  • 画像読み込み → 画像から高さマップ → 画像からサーフェース(高さ入力) → サーフェース光プレビュー で、ベタ塗りスプライトに後から光を当てる
  • 反転 を ON にして、くぼんだ装飾や彫り込みを作る

限界

シルエットの輪郭情報だけから推定するため、絵の内部にある段差(例: 家の窓のくぼみ)は表現できない。内部の段差が必要な場合は高さマップを手描きするか、明るさ モードで陰影塗りを再利用する。

ノード一覧に戻る
画像から高さマップ — PixPipeline ノード解説