"Somehow got unparseable GUID from AssetDatabase" in Editor

Hi,

I think there have been other threads about this message but they were a couple of weeks old and seemed to be slightly different situations.

I’m seeing this exception repeated when running in the editor. I managed to stop in the debugger and I can see that the resource in question is a sprite atlas texture.

Also of note:

  • AssetDatabase.Contains(resource) returns true (?!)
  • AssetDatabase.GetAssetPath(resource) returns “”
  • GUID.Parse(“00000000000000000000000000000000”) returns false (shouldn’t this return true, because whilst this is an all-zero GUID, it is correctly formatted? (importantly this is UnityEditor.GUID))

Not sure if this is just a base issue in 2022.3.9 where atlas sheets aren’t being assigned valid file paths in the asset database?

Erica Taylor,

Any way you can see if this repros in 10f1? If you can’t update to 10f1 then please create a bug with a simple repro project so that it’s reported to the right teams and taken care of.

I have created and submitted a simple reproduction project (IN-57447)

I think we are seeing the same issue, since our issue is also related to sprite atlases. It seems that the problem comes from our sprite atlases having been saved with sprite packer v1 while the project used sprite packer v2. Look at the extension on your sprite atlases to confirm (extension v1: .spriteatlas, extension v2: .spriteatlasv2).

While trying to create a repro project I found that disabling and the reenabling sprite packing in “Project Settings > Editor > Sprite Packer > Mode” recreates the atlases with the correct format. Switching between v1 and v2 doesn’t seem to do that. After disabling and reenabling sprite packing we are not seeing the error message.

Hope it helps!

1 Like

Thanks, I just hit the same issue on a project that was using v1 sprite atlases. Switching to v2 sprite atlas works around the issue.

Could the PolySpatial maintainers please change this behaviour to return PolySpatialAssetID.CreateUnique() instead of throwing an exception here?

1 Like