Community Q&A

Where Wwise users help each other out!

Audiokinetic's Community Q&A is the forum where Wwise users ask and answer questions within the Wwise community. If you would like to get an answer from Audiokinetic's Technical support team, make sure you use the Support Tickets page.

Unity Linux Integration - Errors in Editor

+1 vote
In the Unity integrations, Mac platform specific code is prepended by the following:

#if (UNITY_STANDALONE_OSX && !UNITY_EDITOR) || UNITY_EDITOR_OSX

Whereas Linux specific code is prepended by:

#if UNITY_STANDALONE_LINUX && ! UNITY_EDITOR

This causes the project to be un-editable in editor on Linux and throw errors!
asked Mar 7, 2017 in General Discussion by T C. (110 points)
I'm busy figuring some of this out, hopefully I can leave some advice to anyone else trying to use Wwise on Linux using Unity. Following an email with the support team, this is not actually supported, some don't hold your breath on getting full features working without some work. I am at least at the stage where I can make builds on Linux which can play audio using the Wwise SDK - though I'm still figuring out how to get audio working in the Editor.

Following the discussion of Linux users of another game (Polyball) - it occurred to me that there was still some linking issue with libSDL even though I installed it. Not sure if its a wrong version or perhaps a 32 bit vs 64 bit issue. Here's the thread https://steamcommunity.com/app/368180/discussions/0/133259227521120753/?ctp=2

My solution to get audio working on Linux and get around the error "AkInitializer.cs Awake() was not executed yet" was simply to link to the libSDL that is provided along with steam (even though I'm not using steam currently). My library was located here ~/.steam/steam/ubuntu12_64/libSDL2-2.0.so.0

You can load it using LD_PRELOAD when launching your game, or you can simply copy it into the [GAME_NAME]_Data/Plugins directory.

However, to even get it building on linux, you need to fix a few issues including the one you mentioned. Throughout all those Linux classes you are looking at in Deployment/API/Generated/Linux, you need to change the existing #if statements to:

#if (UNITY_STANDALONE_LINUX && ! UNITY_EDITOR) || UNITY_EDITOR_LINUX

Furthermore, I had to Deployment/API/Handwritten/Common/WAAPI and disable those classes on Linux using:

#if UNITY_EDITOR && !UNITY_EDITOR_LINUX

Besides that, there was an errorMessage variable in AkWwisePicker that needed to be initialized on Linux.

After that, you can hopefully build on Linux and have a playable that has audio. Still figuring out how to get audio working in the editor.

1 Answer

0 votes
I have the same issue, why support team don't respond questions related with this issue?
answered Sep 25, 2017 by Antonio R. (220 points)
...