Linux-Gamers-HOWTO.pdf

(168 KB) Pobierz
The Linux Gamers' HOWTO
The Linux Gamers' HOWTO
Peter Jay Salzman
Frédéric Delanoy
Copyright © 2001, 2002 Peter Jay Salzman
Copyright © 2003, 2004 Peter Jay Salzman, Frédéric Delanoy
2004−11−13 v.1.0.6
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.
Distributed subject to the Open Software License, ver 1.1
74605200.002.png
The Linux Gamers' HOWTO
Table of Contents
1. Administra. ......................................................................................................................................................1
1.1. Authorship and Copyright. ...............................................................................................................1
1.2. Acknowledgements. ..........................................................................................................................1
1.3. Latest Versions and Translations. .....................................................................................................1
1.3.1. Russian. ...................................................................................................................................2
1.3.2. Hungarian. ...............................................................................................................................2
2. Definitions: Types Of Games. ........................................................................................................................3
2.1. Arcade style. .....................................................................................................................................3
2.2. Card, logic and board games. ............................................................................................................3
2.3. Text Adventure (aka Interactive Fiction). .........................................................................................3
2.4. Graphical Adventures. ......................................................................................................................4
2.5. Simulation (aka Sims). ......................................................................................................................4
2.6. Strategy (aka Strats). .........................................................................................................................4
2.7. First Person Shooter (aka FPS). ........................................................................................................4
2.8. Side Scrollers. ...................................................................................................................................5
2.9. Third Person Shooters. ......................................................................................................................5
2.10. Role Playing Game (aka RPG). ......................................................................................................5
3. Libraries. ..........................................................................................................................................................7
3.1. What is Glide2?.. ...............................................................................................................................7
3.2. What is Glide3?.. ...............................................................................................................................7
3.3. What is OpenGL? .............................................................................................................................7
3.4. What is Mesa?. ..................................................................................................................................8
3.5. What is DRI?.. ...................................................................................................................................8
3.6. What is GLX?. ..................................................................................................................................9
3.7. What is Utah GLX?. .........................................................................................................................9
3.8. What is xlib?. ....................................................................................................................................9
3.9. What is a widget set?. .......................................................................................................................9
3.10. What is SDL (Simple DirectMedia Layer)?. ..................................................................................9
3.11. What is GGI?. ...............................................................................................................................10
3.12. What is SVGAlib? Frame buffer? Console?. ................................................................................10
3.13. What is OpenAL?. ........................................................................................................................11
3.14. What is DirectX?.. .........................................................................................................................11
3.15. Clanlib. ..........................................................................................................................................12
4. XFree86 and You. .........................................................................................................................................13
4.1. Getting information about your X system. .....................................................................................13
4.1.1. Probeonly.. .............................................................................................................................13
4.1.2. Getting info about your setup: xvidtune. ...............................................................................13
4.1.3. Getting info about your setup: xwininfo. ..............................................................................14
4.1.4. Other sources of information. ................................................................................................14
4.1.5. Getting information about your 3D system. ..........................................................................14
4.2. Playing Games In X Without a Window Manager. ........................................................................14
5. Various Topics. ..............................................................................................................................................16
5.1. Memory Type Range Registers. .....................................................................................................16
5.2. Milking performance from your system for all it's worth. ..............................................................16
i
74605200.003.png
The Linux Gamers' HOWTO
Table of Contents
5.3. About libraries on Linux. ................................................................................................................16
5.3.1. Dynamic libraries. .................................................................................................................17
5.3.2. Static libraries. .......................................................................................................................17
5.3.3. How are library files found ...................................................................................................17
5.3.4. Finding Out What Libraries a Game Depends On. ...............................................................18
6. When Bad Things Happen To Good People. ..............................................................................................21
6.1. RTFM!. ...........................................................................................................................................21
6.2. Look For Updates and Patches .......................................................................................................21
6.3. Newsgroups. ....................................................................................................................................21
6.4. Google Group Search. .....................................................................................................................21
6.5. Debugging: call traces and core files. .............................................................................................22
6.6. Saved Games. ..................................................................................................................................23
6.8. Hosed consoles. ...............................................................................................................................24
6.9. Locked System. ...............................................................................................................................25
7. Video Cards. ..................................................................................................................................................27
7.1. History ............................................................................................................................................27
7.2. Current Status (1 March 2004) .......................................................................................................28
7.2.1. SVGAlib Support. .................................................................................................................29
7.3. Which Video Card Should I Buy? (1 March 2004). .......................................................................29
7.4. Definitions: Video Card and 3D Terminology. ..............................................................................30
7.4.1. Textures. ................................................................................................................................30
7.4.2. T&L: Transform and Lighting. .............................................................................................30
7.4.3. AA: Anti Aliasing. ................................................................................................................30
7.4.4. FSAA: Full Screen Anti−Aliasing. .......................................................................................30
7.4.5. Mip Mapping. ........................................................................................................................30
7.4.6. Texture Filtering. ...................................................................................................................31
7.4.7. Z Buffering. ...........................................................................................................................31
8. Sound. .............................................................................................................................................................33
8.1. Which sound card is best?.. .............................................................................................................33
8.2. Why isn't my sound working? ........................................................................................................34
8.2.1. Shared interrupt. ....................................................................................................................34
8.2.2. Misconfigured driver. ............................................................................................................35
8.2.3. Something is already accessing your sound card. .................................................................35
8.2.4. You're using the wrong driver (or no driver). .......................................................................35
8.2.5. Permissions Problem. ............................................................................................................36
9. Miscellaneous Problems ...............................................................................................................................37
9.1. Hardware Acceleration Problems. ..................................................................................................37
9.1.1. Hardware acceleration isn't working at all. ...........................................................................37
9.2. Hardware acceleration works only for the root user. ......................................................................38
9.2.1. XFree86 4.x. ..........................................................................................................................38
9.2.2. XFree86 3.x. ..........................................................................................................................38
ii
74605200.004.png
The Linux Gamers' HOWTO
Table of Contents
10. Emulation and Virtual Machines. .............................................................................................................39
10.1. What is a virtual machine?. ...........................................................................................................39
10.2. Apple 8−bit. ..................................................................................................................................39
10.2.1. KEGS.. .................................................................................................................................39
10.2.2. apple2 and xapple2. .............................................................................................................39
10.3. DOS. .............................................................................................................................................40
10.3.1. dosemu. ................................................................................................................................40
10.4. Win16. ...........................................................................................................................................40
10.4.1. Wabi. ...................................................................................................................................40
10.5. Win32. ...........................................................................................................................................40
10.5.1. wine. ....................................................................................................................................40
10.5.2. rewind. .................................................................................................................................41
10.5.3. winex. ..................................................................................................................................41
10.5.4. Win4Lin.. .............................................................................................................................42
10.5.5. VMWare. .............................................................................................................................42
10.5.6. What should I choose?. .......................................................................................................42
11. Interpreters. .................................................................................................................................................44
11.1. SCUMM Engine (LucasArts). ......................................................................................................44
11.2. AGI: Adventure Gaming Interface (Sierra). .................................................................................44
11.3. SCI: SCript Interpreter or Sierra Creative Interpreter (Sierra). ....................................................44
11.4. Infocom Adventures (Infocom, Activision). .................................................................................45
11.5. Scott Adams Adventures (Adventure International. ....................................................................45
11.7. Ultima 7 (Origin, Electronic Arts). ...............................................................................................46
11.8. System Shock (Electronic Arts, Origin). ......................................................................................46
12. Websites And Resources. ............................................................................................................................47
12.1. Meta gaming websites.. .................................................................................................................47
12.2. Commercial Linux Game Resources. ...........................................................................................47
12.2.1. Where to buy commercial games. .......................................................................................47
12.2.2. Who Used To Release Games For Linux. ...........................................................................47
12.3. Other Resources. ...........................................................................................................................48
iii
74605200.005.png
1. Administra
If you have ideas, corrections or questions relating to this HOWTO, please email me. By receiving feedback
on this howto (even if I don't have the time to answer), you make me feel like I'm doing something useful. In
turn, it motivates me to write more and add to this document. You can reach me at
< p(at)dirac(dot)org> . My web page is http://www.dirac.org/p and my Linux pages are at
http://www.dirac.org/linux. Please do send comments and suggestions for this howto. Even if I don't take your
suggestions, your input is graciously received.
I assume a working knowledge of Linux, so I use some topics like runlevels and modules without defining
them. If there are enough questions (or even protests) I'll add more basic information to this document.
1.1. Authorship and Copyright
This document is copyright (c) 2001−2002 Peter Jay Salzman, < p(at)dirac(dot)org> ; 2003−2004
Peter Jay Salzman and Frédéric Delanoy. Permission is granted to copy, distribute and/or modify this
document under the terms of the Open Software License, Version 1.1, except for the provisions I list in the
next paragraph. I hate HOWTO's that include the license; it's a tree killer. You can read the OSL at
If you want to create a derivative work or publish this HOWTO for commercial purposes, I would appreciate
it if you contact me first. This will give me a chance to give you the most recent version. I'd also appreciate
either a copy of whatever it is you're doing or a spinach, garlic, mushroom, feta cheese and artichoke heart
pizza.
1.2. Acknowledgements
Thanks goes out to these people for extensive comments, corrections, and diffs. Their effort is above and
beyond the call of duty:
Frédéric Delanoy, Moritz Muehlenhoff < jmm(at)Informatik(dot)uni−bremen(dot)de > , Mike
Phillips, Ioan Rogers < buck(at)aiur(dot)co(dot)uk>
I would also like to thank the following people for sending in comments and corrections. Without their help,
there would be more typos and mistakes than you could shake a stick at:
Michael McDonnell
1.3. Latest Versions and Translations
http://www.dirac.org/linux/writing, but this is my own personal working copy. The version at my personal
web site might be broken if I'm working on the HOWTO. The version at sourceforge is bleeding edge but
guaranteed to be not broken, however it may have glitches, like unfinished paragraphs. :)
The most recent stable version can be found at http://www.tldp.org.
1. Administra
1
74605200.001.png
Zgłoś jeśli naruszono regulamin