Drag wrote:...only if the envelope is able to resume from a middle point, rather than a brand new note triggering from the start, off cue.
What?? Why would anyone start a new note at the end of the sound effect? What engine does that?
These are the real methods I've seen/tried:
- Silence until next note.
- Resume from middle of note (i.e. it kept playing but has been masked by SFX).
- Fade into middle of note (more involved variant of resume).
- Volume priority.
I've already stated my personal preferences, but my objection to resume isn't about starting a new note envelope where there is none; it's simply that the sound of resuming is a sudden contrast, so it makes a rhythmic mark in the music (it doesn't matter whether it's the start of the envelope or not, it still stands out). Having musical sounds always in the same rhythm keeps them coherent and they hang together to feel like they're separate from sound effects. I only want the sound effects interrupt things and happen at non-musical rhythms.
I also tried fading in after a sound effect instead (for square or noise), but I found this had the same problem. The fade actually draws attention to the resuming sound, and it's still out of rhythm with the music. (I remember hearing fade resume in someone else's engine, but I forget whose.)
Drag wrote:Kid Icarus and Metroid 2 ... footsteps.
Those are interesting examples, though I think this falls in a different category. Footsteps are being suppressed at a higher level, a special flag on the music track or something. This is not any kind of generic priority or resume system, there's no comparison against the actual sounds being played, it's just an on/off switch for the code that triggers the footstep sound. (i.e. any game could implement this in tandem with any of the SFX priority methods we're discussing)
Like I guess the generic extension of this would be that every music track has a boolean list of which sound effects in your game it's allowed to disable? Probably in most games it's easier to make a special case of it for the any sounds that want to do this. (You could similarly flag some sound effects as having volume priority or not, and implement both systems, perhaps? Getting a little complicated, heh...)
Drag wrote:With all this in mind, there isn't one simple mechanical way to solve music/sfx multiplexing, it all comes down to careful planning, and although the volume-based priority method can work for some, it's not always going to be the right solution for everyone.
I'm interested in the opinions of people who favour the volume priority. I asked some questions about this, maybe they sounded like rhetorical argument but I actually want to hear the rationale and why they like it better. (It surprises me that it seems to be the majority here, but maybe that's sort of a consequence of most people using famitone.)