Search Issue Tracker

Fixed in 2020.2

Fixed in 2020.1

Votes

0

Found in

Issue ID

1228762

Regression

No

Scheduled ProbeVolumes bakes are sometimes not ready in bakeCompleted callback

Global Illumination

-

Info from @nicholasb:

I'm running into what looks like a bug in trunk with the Set/GetAdditionalBakedProbe API.
The symptom is that when working with probe volumes, when making changes to the scene, and baking, I more often than not have some of the probe volumes come back with the error that they failed to find baked data for the requested ID.
I shared this with Tobias last week, but he was unable to reproduce on his machine. His hunch was that it was something on the C# end where the IDs getting passed into the lightmapper where incorrect (from maybe somehow getting randomly changed).
I spent a day debugging the C# side, and as far as I can tell the bug isn't there. There IDs are completely stable. So I went one layer deeper, and built the editor and ran in debug and stepped through the code.
This is where I could use some help, I narrowed it down to this erroneous state, but I'm having trouble tracking down the cause.
the m_AdditionalBakedProbePositions is a lookup from ID to position data, which is populated when a user in C# land calls SetAdditionalBakedProbes(ID, positions). In the screenshot here, it is correctly populated with all 5 IDs, each one corresponding to 1 of the 5 probe volumes in my scene. So it appears the input is working.
The m_AdditionalBakedProbeOutput is a lookup from ID to the resulting data pointers, that will be returned back when a user in C# land calls GetAdditionalBakedProbes(ID, ...), which is called in a callback registered to
UnityEditor.Experimental.Lightmapping.additionalBakedProbesCompleted
Interestingly m_AdditionalBakedProbeOutputs is missing one of the keys! This goes on to trigger the error in C# land.
I tested this a few times and it is not consistent which key it drops / is missing, its just often missing 1 to all of them.
Is it possible the bake is being flagged as complete before it actually is? So maybe all work threads have not returned their results? (I don't know the internals of the lightmapper, just guessing based on behavior I'm seeing).
Would you have any time to take a look at this? Its a big slowdown for development on my side since almost every time I bake it doesn't work. Also, I'm sure other users will be hit by this.
Worth noting that this problem is occurring for me on a laptop with an AMD gpu in it, so possibly different than what you all often test with. (It's a macbook pro 2018 bootcamped into windows).

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.