822 15. You Mean There’s More?
signers, voice actors, and composers who work so hard to add that all-too-
critical fourth dimension to the virtual game world. And yet, sadly, the same
thing has happened in this book—I am out of room and out of time, so a full
treatment of audio will have to wait until the second edition. (In keeping with
a long and painfully unfortunate tradition in game development, once again
audio gets the shaft !)
Thankfully, a number of other books and online resources do provide a
wealth of information on audio development. First off , I recommend reading
the documentation for Microsoft ’s XACT sound authoring tool and runtime
API, located on the MSDN website under XACT: Tutorials and Samples (htt p://
msdn.microsoft .com/en-us/library/bb172329(VS.85).aspx). XACT supports
virtually every audio feature the average game programmer would want, and
its documentation is quite easy to digest. The Game Programming Gems book
series also includes a plethora of articles on audio—see [7] Section 6 and [40]
Section 6.
15.1.2. Movie Player
Most games include a movie player for displaying prerendered movies, also
known as full-motion video (FMV). The basic components of the movie player
are an interface to the streaming fi le I/O system (see Section 6.1.3), a codec to
decode the compressed video stream, and some form of synchronization with
the audio playback system for the sound track.
A number of diff erent video encoding standards and corresponding
codecs are available, each one suited to a particular type of application. For
example, video CDs (VCD) and DVDs use MPEG-1 and MPEG-2 (H.262)
codecs, respectively. The H.261 and H.263 standards are designed primar-
ily for online video conferencing applications. Games oft en use standards
like MPEG-4 part 2 (e.g., DivX ), MPEG-4 Part 10 / H.264, Windows Media
Video (WMV ), or Bink Video (a standard designed specifi cally for games by
Rad Game Tools, Inc.). See htt p://en.wikipedia.org/wiki/Video_codec and
htt p://www.radgametools.com/bnkmain.htm for more information on video
codecs.
15.1.3. Multiplayer Networking
Although we have touched on a number of aspects of multiplayer game ar-
chitecture and networking (e.g., Sections 1.6.14, 7.7, and 14.8.3.2), this book’s
coverage of the topic is far from complete. For an in-depth treatment of multi-
player networking, see [3].