ライティングのビルドについて教えてください

パーシスタントレベルから複数のライティングのサブレベルのうちの任意に一つを読み込んでライティングを切り替えるようにしたいのですが、例えば、昼、夕方、夜など。サブレベルを読み込んで切り替えること自体は可能なのですが、ライティングのビルドができなくて困ってます。正しいやり方があれば教えてください。

すみません、再起動したら、ビルドはできました。ただ、ライティングのルールがよくわかってないので、教えてほしいです。ライティング用のレベル上に1つしか存在してはいけない物が同時に読み込まなくても、複数のサブレベルにあるのはあまりよくない状態なのでしょうか?ライティング用のサブレベル(昼用と夜用に)それぞれに、DirectionalLight、SkyLight、SphereReflectionCaptureがあります。また、一つのパーシスタントレベルで昼夜切り替え(時間をかけてゆっくり太陽の位置が変化するのではなく、イベントでぱったりライティングを切り替えたい。)をする場合、他にもっと一般的な正しいやり方がほかにあれば教えてほしいです。自分のやりたいことというか、今やってることは、ゲームインスタンスにあるフラグをパーシスタントレベルのレベルブループリントでgetして、(trueなら昼、falseなら夜)BeginPlayで、昼か夜のどちらかのライティングの設定をしたサブレベルのどちらかをロードする、という内容です。

ライティングシナリオの機能を使いましょう

下記のドキュメントを参考にしてください

ライティングシナリオを使わない場合、Lightのベイク結果は各Meshの存在するサブレベルに保存されるので、うまく切り替えることはできません

読んでやってみたのですが、複数のライティングシナリオがあります的なエラーメッセージなどが出てしまいます、何か間違ってるんだと思うのですが、よくわかりません・・・。

可視性を切り替えて、ライティングのサブレベルが一個だけの状態にすると複数の「ライティングシナリオが云々」エラーはでなくなるのですが、今度は、不可視にしているレベルがあると、ライティングのビルドができなくなってしまったりします。でも、できる時もあります。よくわかりません…。

ドキュメントに書いてあるとおり、使用できるライティングシナリオは1つのみです
複数のライティングシナリオを同時に有効化することはできません
別のライティングシナリオを適用する場合は、既存のものをアンロードする必要があります

不可視にしているレベルがあると、ライティングのビルドができなくなってしまったりします。

ビルドに関係するレベルはすべて表示状態でビルドする必要があります
ライティングシナリオのビルドは、1つずつ行う必要があります

1 Like

ありがとうございます。やってみました。多分、できたと思います。