Substance Painter のNormal map読み込みについて
Substance Painterでは外部で作成したNormal mapをインポートして使う事ができます。しかし、しばしば読み込んだNormal mapのY方向が逆転していることがあったので、この対処方法を共有します。
Normal mapの上下が逆転する原因
Normal mapにはOpenGL方式とDirectX方式があり、Y方向を示すGチャンネルの表現が逆となっています。なおUnityのNormal mapはOpenGL方式です。
Substance Painterでは外部から読み込んだNormal mapをレイヤーにアサインした場合にこの方式を自動で判別しますが、これが間違っている場合に上下が逆に表示されてしまうようです。
Substance Painter での修正方法
Substance Painterでの修正は簡単ですが、設定場所が少しわかりにくいかもしれません。
1.Normal mapイメージを適用したレイヤーのPROPERTIESを開きます
2.Normal欄の右下にある小さな▽をクリックします
3.開いた小ウインドウの二段目右をクリックします(これ以外の設定項目はありません)
4.開いたリストからOpenGL normalかDirect3D Normalの正しく表示される方を選択します
Photoshopでの修正方法
Substance Painterを使わずに単にNormal mapの上下を反転させたい場合は、PhotoshopでNormal map画像のGチャンネルを選択し、イメージ>色調補正>階調の反転とする事で修正できます。Photoshopの場合は画像の上書きが必要ですが、Substance Painterは非破壊で修正できるところが利点です。
まとめ
Normal方向の反転はSubstance Painterのごく基本機能ですが、少しわかりにくい場所にあると感じたので記事にしました。