It's worth
pointing out that we still haven't reached the nirvana of speaker
support yet, since all of these speaker solutions only offer 2 dimensional
sound systems - IE they are all on one level. With 4 speakers, you
can hear a sound anywhere around you in the horizontal, but not
the vertical. You need a speaker over the top of you, and one beneath
you for that to work correctly. Both Creative and Aureal mention
that they offer some algorithms for simulating vertical sounds on
a horizontal setup, but quite frankly, if you can hear it, then
you've got better ears than every one I know. There's no substitute
for physical positioning of a sound source I'm afraid. Not that
it is really that much of a problem for today's crop of FPS games,
since most of them are played on a horizontal basis. Quake
is a good example. While it gives you 6 degrees of freedom, it really
only uses 4 degrees in practical game play. Hearing a sound directly
above you is not critical to successful game play. On the other
hand, if youre playing Descent, or Freespace,
or any space sim, then its a different story.
So the current
state of 3D sounds in games requires one of the two prevalent sound
systems: Creative Labs' EAX sound system, or the Aureal A3D sound
system. There's also the Miles Sound System, which deserves a mention
as well. There are others on the horizon, but since they aren't
here now, we won't dwell on them.
Creative
Labs gives us EAX, and what a solution it is. I attended this years
Creativity Conference, and they certainly have their..."stuff"
together. They have a road map for EAX 3.0, 4.0, 5.0, etc, etc,
etc. EAX revolves around 'Environment sets' (EAX stands for Environmental
Audio. What the X is for is anyone's guess. Probably means the same
as the GTX letters you get on cars). The idea behind environmental
audio is that the audio preferences of your surroundings reflect
the type of surroundings you have. IE if you are in an echo-y cave
in the game, then you get lots of reflective sound effects. When
you move from one area to another, you can re-set these environment
property sets, thus changing the surrounding area's aural characteristics.
There is more to EAX of course, but this is the core of what it's
attempting to do. Also, it's important to distinguish between EAX
and the SB Live! physical card too. Think of EAX as a 'Glide' type
API, and the SB Live! as a voodoo card, and you get the idea. EAX
is suited to the SB Live!'s feature set, but unlike 'Glide' can
be adapted for use on other cards - and we'll talk about that a
bit further in.
Getting
back to the property sets - the big problem is knowing which one
to set them to. It involves knowing the environment you are in.
There are numerous ways to do this, from dropping markers in the
world maps that contain a distance and a property set - if you are
within the range of the marker, this is your property set - to detecting
the architecture around you, how close it all is, and deciding which
property set to use based on that. But Creative has come the rescue
on this front with a tool they call Eagle.