I'm now considering what is the
'normal' volume of my game? Currently
I go listen to a music at my
comfortable level (Volume settings of
computer is at 25% and volume setting
of foobar2000 I used to listen is at
100%) and try to make overall volume
of my game at this level. Is I am
doing right if I used this kind of
reference for my game? The reference
music I listened to are well-mastered
by commercial studio of course, so the
volume will be around 0dB, correct?
I don't fully understand what you're saying. But basically, if you can find a reference and your listening is uncalibrated (i.e. you don't have a standard listening level at which you work everything), then you'll use the reference to gain a reference point for the mix and loudness, but forget the numbers. However, you should use a reference that's realistic, so don't use something that's been mastered red hot or which is a completely different style that you're doing, because it may not be what you're looking for. Generally, use your ears!
Now here is the problem, I think I
should make my total sound of my game
not exceeding 0dB or that will be
clipping.
Yes sure. It should be limited to / not go over 0.0dBFS, or e.g. -0.3dBFS to prevent overloading.
I'm developing a side scrolling game.
I have one weapon which produce loud
continuous sound. Currently when I set
the in-game SFX setting to 100% the
volume is alright, but I think the
default SFX setting have to be about
70% so player have a choice of
increase or decrease the volume.
(correct?) Well, 100% sounds alright
now so if I set the default to 70% it
will be too quiet. So after I set the
default in-game SFX level to 70% I
went to XACT and increase the mixer of
my SFX category from 0dB to 6dB. So my
70% will be equivalent to my old 100%
and allowing player to go louder.
No, you shouldn't leave digital headroom unused. A finished mix should have its loudest parts at 0.0dBFS or very close to that, not lower, because that would be leaving digital headroom unused and it's guaranteed to be quieter than everything else, so it can't match with the sound level of other media. And you don't want the listener to have to drastically adjust the system volume, when switching from game to game, media to media. Sure, the listener can adjust the system volume, but that's a separate thing from setting the maximum level of a sound mix, which should use all available headroom in its loudest parts.
The problem arises, when I'm shooting
that loud weapon and press a button to
bring up pause screen. Normally the
'ding' SFX will be played when pause,
but I've noticed that my 'ding' sound
is noticeably quieter when pause the
game while firing weapon! If I'm not
doing anything the 'ding' sound will
be louder. This is not happening with
my previous 100% sound and 0dB gain on
my SFX category setting. Is this
called clipping? If I were to
describe, the 'ding' sound were
muffled by shot sound.
It sounds like it's clipping or hitting to a master limiter, which forces the overloaded part of the sound down. Excessive clipping is accompanied by harsh distortion and you can ALWAYS see it from any volume meter (if it's peaking at full or there's a red warning light, then it's clipping or has been clipped).
When I turned down a volume of
computer the clipping is still there.
It's just hearing the problem quieter.
This leads me to thinking that the
clipping is happening in game
application before sending out to
computer. The computer has more
headroom? If I listen to lady gaga
while playing my clipped game sound,
my lady gaga will be in the perfect
form? (Well, I don't really listened
to lady gaga but that's an example)
Yes. "Clipping" never occurs after the sound has left the computer system, it happens when it's captured or before it's output. Precisely it happens, because the sound level exceeds the highest value that can be represented digitally and the amplitude values that go over that maximum value are simply truncated to the maximum value, which then distorts the overall signal. Practically clipping is created if recording at a too high level or by letting the sound digitally exceed the maximum level (0.0dBFS in level meters). You should not clip the audio, but keep it under 0.0dBFS or limited to 0.0dBFS in all cases, but not over 0.0dBFS, because that part going over 0.0dBFS is clipped.
Now talking about BGM. With my
understanding of clipping I think game
BGM have to be much lower than 0dB
(unlike track for listening) because
you have to leave some room for SFX to
add up to 0dB is that correct? If that
so can I calculate what my average SFX
volume should be based on average BGM
volume so they add up nicely to 0dB?
Yes. You need to balance all sounds that you're adding to a mix so that they use the headroom wisely and don't overload/clip the system. Therefore you place the sounds that are to be loudest to be the loudest and balance other sounds to accompany them at lower levels. However, there's much much more to mixing (EQ, dynamics control etc.) than balancing the volumes of tracks/sounds, but setting the basic balance of tracks/sounds is a good start.
The solution I can think of is to mix
the overall sound in the game in
somewhat low volume (Even in 100% BGM
and SFX in-game settings) and then let
player turn up the volume of their
computer (or TV) them self. With this
setting every time playing this game
you must turn up the volume... which I
think is not right.
You should mix at a level where you know what kind of mix you're targeting, i.e. the listening level helps you know how to mix the sound. This is also why you can use reference audio/mixes, because you can compare your mix to those and hear whether what you're doing is in the ballpark of other reasonably similar mixes.
How come many commercial games that
fires a lot of weapons and each SFX is
still in their correct form?
Because they've been mixed so that they maximize clarity and impact without overloading the system. That's what sound mixing is about. Making the available sounds sound clear and fitting them together in the mix and using the limited volume range and frequency range in a way that maximizes clarity and impact.
The XACT tool supports adjusting the
gain level. Is it the best practice
that I mix all SFX in my games around
0dB and then setting negative gain in
XACT? (and never set a positive gain)
You can do either way, either premixing the sound before bringing it to XACT or setting the levels in XACT. Most game audio people juggle between the implementation tool and a DAW, because you cannot do many adjustments in the implementation tools or it's cumbersome, so it's better to have the mix balance in the ballpark, before importing them to implementation tool, because all you can do there is adjust volume and effects.