0
0

Hello,

I have got a world with a couple of emitters with the same sound. The maxplaybacks is set to 1 and behaviour to steal quietest.
These emitters overlap each other considerably and the behaviour I am expecting is that when the inactive emitter becomes louder than the one playing that it steals the active emitter. However what happens is that as soon as I step into the range of the inactive emitter I get a ping-pong between these emitters stealing from each other.

The behaviour of the emitter is that once it is in range it tries to play and get an event through getEventBySystemID, in the assumption that if it is not louder than the currently playing sound fmod won’t actually retrieve a valid event and thus it won’t be able to play.

I have also tried this with maxplaybacks to 2 and 4 with 3 and 6 emitters respectively with the same result.

Is this the expected behaviour and should I be looking at other route?

Thanks in advance,
Pedro

  • You must to post comments
0
0

If you set the behavior to "Steal quietest," then it will ALWAYS steal the channel from the quietest sound playing when it attempts to play.

To avoid the ping pong type behavior, try "Just fail if quietest" because then the quieter sound will simply fail to start instead of stealing the channel from the quietest active sound.

  • You must to post comments
0
0

FMOD doesn’t have virtual events. So what I do if I get a failure (on any events marked ‘fail if quietest’, is to retry them in a tick or so. This gives us a cheap virtual event like system.

  • You must to post comments
0
0

Cool thanks for the answers. I guess I was thinking that FMOD also took into account the new channel coming into play for the Steal Quietest behaviour but apparently it was Just Fail if Quietest I really wanted.

  • You must to post comments
Showing 3 results
Your Answer

Please first to submit.