概要
サーフェース(高さ・AO・発光つきの立体情報)を、UnityやRPG Developer BAKINなど リアルタイムライティング対応のゲームエンジンへ持ち込むためのマップ一式に分解するノードです。 PixPipeline内で彫刻・円柱・傾きなどで作り込んだ高さがそのまま法線マップに反映されるので、 「エンジン側のライトで陰影が動くドット絵」の素材出力に使います。
使い方のポイント
- 定番のつなぎ方:
layers_to_surface(またはsurface_sculpt)→ このノード → 各出力をbatch_export。 アルベド・法線・発光をそれぞれPNGで書き出し、エンジン側でマテリアルに割り当てます - 法線は最終的な高さマップから毎回導出します(彫刻・円柱プロファイル・傾きの結果を含む)。
normal_strengthは 1〜3 が柔らかい起伏、4以上でくっきりしたベベル向けです - Unity(既定のOpenGL式)はそのまま、BAKINなどDirectX式のツールでは
flip_greenをオンにします。 エンジンに置いたとき出っ張りが凹んで見えたら、この規約が逆になっているサインです - 法線マップのアルファにはアルベドのアルファがコピー済みなので、 スプライトの透明部はエンジン側でそのままマスクできます
- アニメーションと組み合わせる場合は
animation_renderの各フレームへ同様に接続すれば、 法線シートも同じ枚数だけ書き出せます
よくある失敗
- エンジン内の陰影がPixPipelineのプレビューと違う:
surface_light_previewの段階化 (トーングレードのステップ)はエンジン側では再現されません。エンジンの通常ライティングは 連続的な陰影になるため、ドット絵らしい段階陰影が欲しい場合はエンジン側に ポスタライズ(量子化)シェーダが必要です - 凹凸が逆に見える:
flip_greenの設定がエンジンの規約と合っていません。トグルを切り替えてください - 発光が出ない: 発光マップは
layers_to_surfaceの Emission レイヤーなど、 サーフェースが発光情報を持っている場合のみ中身が入ります(無ければ全面透明)
関連ノード
layers_to_surface— レイヤーからサーフェースを組み立てる(このノードの入力の定番元)surface_sculpt— 高さ・AOをブラシで作り込む(結果は法線に反映される)surface_light_preview— PixPipeline内でのライティング確認用(こちらは絵として完成させる側)batch_export— 各マップをPNGとしてまとめて書き出す