The studio I’m working with have most of their game code in Class Libraries in Visual Studio. This code can’t access FMOD as the code is already compiled so we’re trying to add FMOD to the solution.
It’s kind of okay but I’m getting an entry point not found error.
I’ve imported the DLL’s again and sloppily changed the methods that access the DLL to just return FMOD.RESULT.OK but neither have worked.
I’ve already asked about adding FMOD to a Visual Studio solution, and sent an email, but got nothing back so am really stuck on how to follow and solve this issue.
It seems FMOD just isn’t meant to work like this but I’m more than happy to work on a solution that would work -sort of a custom integration.
Any help is appreciated!
Sorry for the delay in response.
It should be possible to use FMOD from a native DLL in Unity.
Is it possible that you are creating and using a FMOD System from native code and the FMOD RuntimeManager is creating and using a separate system?
Are you using the FMOD Unity Integration in Editor or only in the DLL implementation?
Are you including the FMOD dll’s for the required platform/s to your Unity project?
As well as setting up the meta files/plugin settings in Unity.
The wrapper files will be trying to access the unmanaged FMOD libs which we only need to declare the name of and Unity will find, using the meta files to find in editor and a plugins folder in a build.
This is probably caused by the use of #if UNITY defs in our integration. You would have to define this yourself, or remove/change all the Unity defines.
So I’ve made progress! I’m using the runtime DLL for FMOD and I’ve now got sound in my game.
I get the ‘ERR_PLUGIN_MISSING’ error (as I’m using the distance filter) but adding the DLL to 86_64 and adding it to the settings causes ‘Studio Initialization Failed: Loading plugin ‘fmod_distance_filter’ ERR_INVALID_PARAMETER’.
I’m not sure why that’s an error but if I can’t get rid of it then I’m going to just not use that plugin as all I want is to get it to work again, and start using FMOD.
Do you know where in code that error message is coming from?