A few questions about integrating AudioKinetic Wwise and Unity
Posted
by
SaldaVonSchwartz
on Game Development
See other posts from Game Development
or by SaldaVonSchwartz
Published on 2013-11-18T00:43:10Z
Indexed on
2014/06/07
3:50 UTC
Read the original article
Hit count: 435
unity
I'm new to Wwise and to using it with Unity, and though I have gotten the integration to work, I'm still dealing with some loose ends and have a few questions: (I'm on Unity 4.3 as of now but I think it shouldn't make any difference)
- The base path: The Wwise documentation implies you set this in the
AkGlobalSoundEngineInitializer
basePath
public ivar, which is exposed to the editor. However, I found that this variable is not really used. Instead, the path is hardcoded to/Audio/GeneratedSoundBanks
inAkBankPath
. I had to modify both scripts to actually look in the path that I set in the editor property. What's the deal with this? Just sloppyness or am I missing something? - Also about paths: since I'm on Mac, I'm using Unity natively under
OS X and in tadem, the Wwise authoring tool via VMWare and I share
the OS X Unity project folder so I can generate the soundbanks into
the assets folder. However, the authoring tool (downloaded the
latest one for Windows) doesn't automatically generate any
"platform-specific" subfolders for my wwise files. That is, again,
the Unity integration scripts assume the path to be
/Audio/GeneratedSoundBanks/<my-platform>/
which in my case would be Mac (I set the authoring tool to generate for Mac). The documentation says wwise will automatically generate the platform-specific folders but it just dumps all the stuff inGeneratedSoundBanks
. Am I missing some setting? cause right now I just manually create the/Mac
folder. The C# methods
AkSoundEngine.PostEvent
andAkSoundEngine.LoadBank
for instance, have a few overloads, including ones where I can refer to the soundbanks or events by their ID. However, if I try to use these, for instance:AkSoundEngine.LoadBank(, AkSoundEngine.AK_DEFAULT_POOL_ID)
where the int I got from the .h header, I get
Ak_Fail
. If I use the overloads that reference the objects by string name then it works. What gives?- Converting the ID header to C#: The integration comes with a C# script that seems to fork a process to call Python in turn to covert the C++ header into a C# script. This always fails unless I manually execute the Python script myself from outside Unity. Might be a permissions thing, but has anyone experienced this?
- The Profiler: I set up the Unity player to run in the background and am using the "Profile" version of the plugin. However, when I start the Unity OS X standalone app, the profiler in VMWare does not see it. This I'm thinking might just be that I'm trying to see a running instance of the sound engine inside an OS X binary from a Windows virtual machine. But I'm just wondering if anyone has gotten the Windows profiler to see an OS X Unity binary.
- Different versions of the integration plugin: It's not clear to me from the documentation whether I have to manually (or write a script to do it) remove the "Profile" version and install the "Release" version when I'm going to do a Release build or if I should install both version in Unity and it'll select the right one.
Thanks!
© Game Development or respective owner