Edit: I kinda managed to find a solution.
You need to use an intermediate listener as said here: https://www.audiokinetic.com/fr/library/edge/?source=SDK&id=soundengine_listeners.html#soundengine_registering_listeners
It is also possible to use listeners for 3D positioning of submixes. To do so, it is necessary to assign listeners to game object that are also listeners creating a directed graph of game objects, connected by emitter-listener associations.
So in order the chain becomes:
- Sound (one or many) which will post non-positioned events to the 3d bus via AkGameObjs and will have only the Emitter below as listener (with Use Default Listeners unchecked)
- Emitter which will be used to output the submix positionally, it will need an AkAudioListener to receive input from all the Sounds and an AkGameObj with Use Default Listeners checked to redirect the output to the Default Listener (player)
This will create a chain like this
Which is still different from the Integration Demo below but at least it works
Original comment below:
I've been banging my head on this for 2 days with almost no results.
First of all I'd like to thank Audiokinetic for their VERY CLEAR and EXHAUSTIVE documentation about their integrations too, they are almost like black boxed.
I was profiling the Integration Demo and our project to see what is that we are doing differently and the Voices tab caught my attention:
This is our project (don't mind the missing event, the profiler started after it was sent), the Game Object and Listener gameobjects are correct, also the bus is selected (even if the positioning does not work)
And here you see the positioning is not working because the bus should be on the other GameObject
While here is the Integration Demo, and as you can see the weird thing is that the Game Object and Listener are the same object
Even though nowhere the Emitter lists itself as a listener, only Listener
So how is this supposed to work? All my other settings are the same as in the Integration Demo project so I'm guessing the problem lies in the Unity Integration but I can't figure out where, maybe who wrote that integration could help...
Another possible clue is that in the Integration Demo after the 3d bus it shows that the connection has a volume adjustment, but I can't figure out where in the project it's happening