Is there a way to lookup Path by GUID?

There’s a way to look-up the GUID via a Path (https://www.fmod.com/resources/documentation-unity?version=2.01&page=api-runtimemanager.html#pathtoguid), but there doesn’t seem to be any API to do the opposite.

My project uses GUID’s to play sounds, because they allow us more flexibility when organizing the sounds. However, I’d like to be able to convert a given GUID to the path for debugging purposes, since GUID’s aren’t human readable. It seems like this API should be possible, but I wasn’t able to find any documentation on it.

Any suggestions?

RuntimeManager.StudioSystem has a lookupPath method for this purpose. A handy converter could perhaps be:

public static string GUIDToPath(Guid guid)
{
    string path;
    RuntimeManager.StudioSystem.lookupPath(guid, out path);
    return path;
}

Not sure why that doesn’t exist in our integration already, I’ll ask our Dev team and see if that’s something we’re thinking of adding.

It’s worth noting that in 2.02.02 we’ve just added the ability to intelligently use GUIDs within the Unity integration. You can choose in the FMOD for Unity settings whether you want to bind on path or GUID which is explained in our Event Linkage docs.

This means at runtime we always use GUIDs (for performance), within the editor we always display paths (for human readibility) and how we bind between Studio and Unity is your preference.

@jeff_fmod Thank you so much for this! I tried out this solution and it works perfectly.

@matthew This looks really interesting! This was also a painpoint for me. Some of the FMOD sounds in my game are played via the Unity timeline. Those sounds are played using the FMOD Unity Timeline integration which uses the FMOD event picker.

I had assumed this approach would link the Guid, but it didn’t appear to. If I’m understanding correctly, it sounds like this new setting in 2.02.02 would allow me to set the linkage to Guid, which might allow the timeline to take advantage of the benefits of using Guids. Looking forward to trying it out!

If I’m understanding correctly, it sounds like this new setting in 2.02.02 would allow me to set the linkage to Guid, which might allow the timeline to take advantage of the benefits of using Guids.

Yes, exactly that. All FMOD components including the timeline integration should honor the new linkage setting.

@mathew Is there any other preparation involved in switching pathing options, or is it expected to be simple and seamless?

Screen Shot 2022-10-13 at 2.26.23 PM

Hi,

There isn’t any preparation required. This will just change how FMOD and Unity communicate with each other. Again you can reference the Document linked here

for more information.

Hope this helps!

1 Like