お世話になっております。
詳しい条件は不明ですが、複数のPC環境(UE5.7.1)で添付のような青いノイズが発生する問題が発生していました。
一応対処をすることはできたのですが、変更内容に問題がないかお伺いしたいです。
状況としては、
- MegaLightsのDenoiserTemporalCSで発生している
- r.MegaLights.DownsampleMode 0 とすることで発生しなくなる
- r.MegaLights.DownsampleMode 1 と 2 では発生する
- 環境によって発生頻度が異なる
- GPUDumpでTemporalAccumulationの出力を見ると、DiffuseLightingとSpecularLighting が (0.0, 0.0, 64512)となっており、LightingMomentsもG成分だけ突出して大きい値になっている(R, B成分は0.0)
という状態で、
// Disable neighborhood clamp
// Setting bounds to MaxHalfFloat instead of a branch generates code with much higher occupancy on console
if (!bLightingValid)
{
Neighborhood.Extent = half(MaxHalfFloat);
}
で行っている `half(MaxHalfFloat)` の代わりに 0.0 を代入するようにしたところノイズが発生しなくなりました。
これを受けて、
https://github.com/EpicGames/UnrealEngine/commit/7a0f421da1175400cf611ac7835c26e85b9fd931
の変更のうち、DenoiserTemporalCS() 内の変更を取り込むことで対処しました。
こちらの変更は release ブランチでは取り込まれていないものになりますが、対処としては問題ないでしょうか?
お忙しいところ恐縮ですが、ご確認のほどよろしくお願いいたします。
[Attachment Removed]