Let's Enjoy Unreal Engine

Unreal Engineを使って遊んでみましょう

UE4 BSPブラシから作成したスタティックメッシュにライトがベイク出来ない時の対処法

UE4.9を使っていて、BSPブラシをスタティックメッシュに変換するという使い方ができるのですが、これを使ってスタティックメッシュを使おうとした時にライティングビルド時にライトが反映されないという症状が起きます。

なぜか反映されない

 なぜかスタティックメッシュの横にポイントライトを置いてライティングビルドを行なっても反映されません。

ちなみにこの時スタティックメッシュの可動性は"スタティック"でポイントライトは"ステーショナリー"になっています。

試しにポイントライトを"ムーバブル"にした時には当然ですが、ライティング自体は行なわれます。

対処法

調べてみると、BSPブラシから生成されたスタティックメッシュは自動的にライトマップUVを生成しているものの、使用するライトマップ座標インデックスが"0"を指定しており、自動生成されるライトマップのインデックスは"1"になっています。

参考

LightingTroubleshootingGuide - Epic Wiki

つまりこの"Light Map Coordinate Index"を0から1に変更するだけで正常なライトマップUVチャンネルを参照する事が出来るようになります。

 生成されるライトマップUVチャンネルのインデックスには注意しましょう。地味にハマりやすいので頭のどこかで覚えておくといいと思います。