Progressive Lightmapper Seams

With each successive update to Unity, the Progressive Lightmapper seems to generate more and more render artefacts. In Unity 2019.2, Lightmapper Filtering is particularly bad and creates dark seams on the surface of my 3D object. I’ve spent months troubleshooting this problem with every combination of settings that I can think of.

The only thing that made a difference was to set Filtering to None but this isn’t a practical solution as the number of Samples has to be crazy high just to remove the blotchiness.

Here is a screen capture that shows the dark seams when Filtering is set to Optix:

Here is a screen capture that shows a clean lightmap when Filtering is set to None:

And then finally today I found another solution that works but has me baffled. If I render the lightmap on my Laptop I get a perfectly clean result but If I render the exact same scene on my Desktop, the dark seams come back.

Here is a screen capture that uses the Optix Filtering option and shows the clean lightmap that I get from my Laptop:

Laptop specs:
Dell Precision M6800
CPU: i7-4700MQ
GPU: Quadro K4100M
RAM: 32 GB

Desktop specs:
CPU: i7-6700K
GPU: GeForce GTX 1080 Ti
RAM: 32 GB

Does anything about the Laptop hardware suggest why the Progressive Lightmapper Filtering should work properly whilst it does not work properly on the Desktop hardware?

1 Like

Have you updated the drivers on both machines?

Also, can you share the model so we can test this?

Hi Jesper,

The same behaviour occurs on older and most current versions of the graphics card drivers. The Quadro graphics card is using v416.78 and the GeForce graphics card is using v441.20.

I use “Progressive CPU” to render my lightmaps but in this sample scene “Progressive GPU” shows the same issues. On the Laptop the seams are perfect but on the Desktop I get those dark artefacts.

Here is an animated GIF that shows the good Laptop and bad Desktop seams in the Baked Lightmaps:

5181344--514541--Lightmap_Bad_Seams.gif

I made a copy of my Unity project and deleted everything except the chair and some representative walls and floor. I’m not sure what is the best way to share a project with you so I will try and send you a message with an attached 7zip file.

I would love to know what is allowing my Laptop to render the Lightmap seams properly but not my Desktop.

It seems like you are hitting the following bug:

Denoising using OpenImage or Optix is introducing dark borders to UV charts in intensity - Unity Issue Tracker - [Denoising] Denoising using OpenImage or Optix is introducing dark borders to UV charts in intensity

However, it is very strange that it does not reproduce on your other machine. As @Jesper-Mortensen mentioned, it would be great to get a small repro project from you so that we could test locally.

1 Like

Hello Kristijonas,

Thanks for taking a look at this issue. The link to the bug report that you provided does not work but you are right, it is baffling why my laptop renders the light map properly. Even though I’m using the CPU lightmapper, my theory is that the Quadro graphics card is doing something differently to how the GeForce graphics cards does it.

I hope I did it correctly but I sent Jesper a private message through this forum and provided a download link to a simplified Unity project that contains the chair. I’ve included you into that conversation so if I didn’t do it correctly, please let me know and I’ll send you the link again.

Hello kristijonas & Jesper,

I’ve noticed that the latest version of Unity 2019.3.0f1 has not fixed this bug with the Optix denoiser.

I was wondering if you were able to reproduce the problem that I’m seeing with the sample Unity project that I shared with you? The issue being that I get a bad result on my desktop computer and a good result on my laptop. It is becoming quite a nuisance to do all of my light baking on the slower laptop computer :frowning:

1 Like

We’ve noticed artifacts in lightmaps with a resolution >= 2K which are denoised using optix when using newer nvidia drivers. Internal tests show that 430.86 still produces clean results, whereas newer driver versions don’t. You may want to try downgrading your driver version on the desktop for the time being and see whether that fixes the artifacts.

2 Likes

Thanks for that feedback uy3d, that’s some great information. I went to Nvidia’s web site and the oldest driver that I can get my hands on is in the 436.xx range. That’s ok though, I think I’ll just stick to baking the lighting with my laptop for now.

Do you know if Nvidia is aware of this issue? Does it mean anything that the bug happens even with the OpenImage Denoiser? That one’s from Intel isn’t it?

The download links on Nvidia’s website seem to contain the driver version in the URL. If you hover over the green Download button you’ll see the URL. You should be able to download a specific version by manually changing the link.

That being said, this issue should only affect optix denoising. If you still get those artifacts with the intel denoiser, then this is probably something else.

I definitely get the seam artefacts with both denoisers. The Intel one is less obvious but the artefacts are still there.

If you want to confirm this for yourself, you can download my sample Unity project from here https://drive.google.com/file/d/1MkTzUBjiQ6RzyhJ3euDffeiGfETO4Rbo/view?usp=sharing

2 Likes

I get much the same with the seams appearing more and more pronounced when used for each filtering step - i.e. if I used either for direct and then for indirect and then for AO it becomes more and more pronounced.

Is there a fix likely for this or is it a driver issue - i.e. will this be fixed by new NVidia drivers?

This issue is down as Won’t Fix but it would be useful to know why it’s tagged as such and whether we are waiting for 3rd parties to fix there stuff and do they know - they denoisers are pretty useless at this point.

1 Like

I just tried baking with downgrading the graphic cards drivers to 430.86 like suggested, but to no avail. I am baking on a GTX 1070. I noticed that in the baked albedo mask, the UV intersect black texels that were excluded from calculations. I wonder if the filtering smears in these black texels into the UV region

1 Like

Still an issue on current drivers even at 512x512, doesn’t matter which denoiser is selected:

Thanks for the updates, everyone. I’ll circulate this internally for you all.

2 Likes

Hey @NovaSixSix . We are aware of this issue but we are as of yet unable to resolve it until the hardware manufacturers resolve it on their end.

A fix by @Jesper-Mortensen has fixed the dark artifacts on Optix in 2019.3 and 2020.1.
In my experience, the best results you can get right now on Nvidia hardware is using Optix and GPU PLM. (The following results are using Intel Xeon W-2145 3.70 GHz, 32GB RAM and Nvidia GeForce RTX 2070)

Optix CPU PLM


Optix GPU PLM
OpenImageDenoise GPU PLM
OpenImageDenoise CPU PLM

2 Likes