The Linux Gamers' HOWTO

Peter Jay Salzman

p@dirac.org

v.0.9.8, 2002-01-28

Abstract

The same questions get asked repeatedly on Linux related mailing lists and news groups. Many of them arise because people don't know as much as they should about how things "work" on Linux, at least, as far as games go. Gaming can be a tough pursuit; it requires knowledge from an incredibly vast range of topics from compilers to libraries to system administration to networking to XFree86 administration ... you get the picture. Every aspect of your computer plays a role in gaming. It's a demanding topic, but this fact is shadowed by the primary goal of gaming: to have fun and blow off some steam.

This document is a stepping stone to get the most common problems resolved and to give people the knowledge to begin thinking intelligently about what is going on with their games. Just as with anything else on Linux, you need to know a little more about what's going on behind the scenes with your system to be able to keep your games healthy or to diagnose and fix them when they're not.


Table of Contents
1. Administra
1.1. Authorship and Copyright
1.2. Acknowledgements
1.3. Latest Version and Translations
2. Definitions: Types Of Games
2.1. Arcade style
2.2. Card, logic and board games
2.3. Text Adventure (aka Interactive Fiction)
2.4. Graphical Adventures
2.5. Simulation (aka Sims)
2.6. Strategy (aka Strats)
2.7. First Person Shooter (aka FPS)
2.8. Side Scrollers
2.9. Third Person Shooters
2.10. Role Playing Game (aka RPG)
3. Libraries
3.1. What is Glide2?
3.2. What is Glide3?
3.3. What is OpenGL?
3.4. What is Mesa?
3.5. What is DRI?
3.6. What is GLX?
3.7. What is Utah GLX?
3.8. What is xlib?
3.9. What is SDL?
3.10. What is GGI?
3.11. What is SVGAlib? Frame buffer? Console?
3.12. What is OpenAL?
4. Definitions: Video Card and 3D Terminology
4.1. Textures
4.2. T&L: Transform and Lighting
4.3. AA: Anti Aliasing
4.4. FSAA: Full Screen Anti-Aliasing
4.5. Mip Mapping
4.6. Texture Filtering
4.7. Point Sampling Texture Filtering
4.8. Bilinear Texture Filtering
4.9. Trilinear Texture Filtering
4.10. Anisotropic Texture Filtering
4.11. Z Buffering
5. XFree86 and You
5.1. Getting information about your X system
6. Various Topics
6.1. Memory Type Register Ranges
6.2. Milking performance from your system for all it's worth
6.3. About libraries on Linux
7. When Bad Things Happen To Good People
7.1. RTFM!
7.2. Look For Updates and Patches
7.3. Newsgroups
7.4. Google Group Search
7.5. Debugging: call traces and core files
7.6. Saved Games
7.7. What to do when a file or library isn't being found (better living through strace)
7.8. Hosed consoles
8. Hardware
8.1. Which video card is the best?
8.2. Which sound card is best?
9. Miscellaneous Problems
9.1. Hardware Acceleration Problems
9.2. Hardware acceleration works only for the root user
9.3. Why isn't my sound working?
10. Emulation and Virtual Machines
10.1. Apple 8-bit
10.2. DOS
10.3. Win16
10.4. Win32
11. Websites
11.1. Meta gaming websites
11.2. Commercial Linux Game Websites
11.3. Game Specific Websites Of Note
11.4. Other websites