Home | History | Annotate | Download | only in docs
      1 Linux Glquake v0.98, Quake v1.09 release notes
      2 
      3 Requirements
      4 ------------
      5 
      6 For 3DFX based hardware, you must download and install Linux GLIDE from 
      7 http://glide.xxedgexx.com/3DfxRPMS.html and install as per the
      8 instructions.
      9 
     10 Running GLQuake
     11 ---------------
     12 
     13 There are three different ways to execute GLQuake:
     14 
     15 1. The binary "glquake" requires Mesa 3-D 2.5 or later installed and compiled
     16 with 3DFX support (fxMesa..() function interface).  It also requires
     17 svgalib 1.3.0 or later for keyboard/mouse input.  This binary is a console
     18 application.  Mesa 3-D requires GLIDE to be installed.
     19 
     20 2. The shell script "glquake.3dfxgl" runs the "glquake" binary after
     21 preloading the lib3dfxgl.so library.  This is a port of 3DFX's Win32
     22 OpenGL MCD (Mini Client Driver) to Linux.  It is faster than Mesa 3-D
     23 since it was written specifically with supporting GLQuake in mind.
     24 lib3dfxgl.so requires that GLIDE be installed.
     25 
     26 3. The binary "glquake.glx" is linked against standard OpenGL libraries.
     27 It should run on many different hardward OpenGL implementations under
     28 Linux and X11.  This binary is an X11 application and must be run under
     29 X11.  It will work with Mesa 3-D as a standard glX based OpenGL 
     30 applications.  If the Mesa 3-D library is compiled with 3DFX support,
     31 you can have Mesa 3-D support 3DFX hardware under X11 by setting the
     32 enviroment variable "MESA_GLX_FX" to "fullscreen" for fullscreen mode
     33 and "window" for windowed mode.
     34 
     35 You must also have SVGALib 1.3.0 or later installed.  GLQuake uses SVGALib
     36 for mouse and keyboard handling.
     37 
     38 If you have gpm and/or selection running, you will have to terminate them
     39 before running GLQuake since they will not give up the mouse when GLQuake
     40 attempts to run.  You can kill gpm by typing 'killall gpm' as root.
     41 
     42 You must run GLQuake as root or setuid root since it needs to access things 
     43 such as sound, keyboard, mouse and the 3DFX video.  Future versions may not 
     44 require root permissions.
     45 
     46 resolution options
     47 ------------------
     48 glquake -width 512 -height 384
     49 Tries to run glquake at the specified resolution.  
     50 Only highend VooDoo cards support such high resolutions (most
     51 cards on the market right now do not).  Another popular and supported mode
     52 is 512x384 (-width 512 -height 384) which can offer a faster speed than
     53 the default 640x480.
     54 
     55 You can also specify the resolution of the console independant of the screen
     56 resolution.
     57 
     58 glquake -conwidth 320
     59 This will specify a console resolution of 320 by 240 (the height is
     60 automatically determined by the default 4:3 aspect ratio, you can also
     61 specify the height directly with -conheight).
     62 
     63 In higher resolution modes such as 800x600 and 1024x768, glquake will default
     64 to a 640x480 console, since the font becomes small enough at higher 
     65 resolutions to become unreadable.  If do you wish to have a higher resolution
     66 console and status bar, specify it as well, such as:
     67 glquake -width 800 -height 600 -conwidth 800
     68 
     69 texture options
     70 ---------------
     71 The amount of textures used in the game can have a large impact on performance.  
     72 There are several options that let you trade off visual quality for better 
     73 performance.
     74 
     75 There is no way to flush already loaded textures, so it is best to change 
     76 these options on the command line, or they will only take effect on some of 
     77 the textures when you change levels.
     78 
     79 OpenGL only allows textures to repeat on power of two boundaries (32, 64, 
     80 128, etc), but software quake had a number of textures that repeated at 24 
     81 or 96 pixel boundaries.  These need to be either stretched out to the next 
     82 higher size, or shrunk down to the next lower.  By default, they are filtered 
     83 down to the smaller size, but you can cause it to use the larger size if you 
     84 really want by using: 
     85 
     86 glquake +gl_round_down 0
     87 This will generally run well on a normal 4 MB 3dfx card, but for other cards 
     88 that have either worse texture management or slower texture swapping speeds, 
     89 there are some additional settings that can drastically lower the amount of 
     90 textures to be managed.
     91 
     92 glquake +gl_picmip 1
     93 This causes all textures to have one half the dimensions they otherwise would.  
     94 This makes them blurry, but very small.  You can set this to 2 to make the 
     95 textures one quarter the resolution on each axis for REALLY blurry textures.
     96 
     97 glquake +gl_playermip 1
     98 This is similar to picmip, but is only used for other players in deathmatch.  
     99 Each player in a deathmatch requires an individual skin texture, so this can 
    100 be a serious problem for texture management.  It wouldn't be unreasonable to 
    101 set this to 2 or even 3 if you are playing competatively (and don't care if 
    102 the other guys have smudged skins).  If you change this during the game, it 
    103 will take effect as soon as a player changes their skin colors.
    104 
    105 run time options
    106 ----------------
    107 At the console, you can set these values to effect drawing.
    108 
    109 gl_texturemode GL_NEAREST
    110 Sets texture mapping to point sampled, which may be faster on some GL systems 
    111 (not on 3dfx).
    112 
    113 gl_texturemode GL_LINEAR_MIPMAP
    114 This is the default texture mode.
    115 
    116 gl_texturemode GL_LINEAR_MIPMAP_LINEAR
    117 This is the highest quality texture mapping (trilinear), but only very high 
    118 end hardware (intergraph intense 3D / realizm) supports it.  Not that big of 
    119 a deal, actually.
    120 
    121 gl_finish 0
    122 This causes the game to not issue a glFinish() call each frame, which may make 
    123 some hardware run faster.  If this is cleared, the 3dfx will back up a number 
    124 of frames and not be very playable.
    125 
    126 gl_flashblend 0
    127 By default, glquake just draws a shaded ball around objects that are emiting 
    128 light.  Clearing this variable will cause it to properly relight the world 
    129 like normal quake, but it can be a significant speed hit on some systems.
    130 
    131 gl_ztrick 0
    132 Glquake uses a buffering method that avoids clearing the Z buffer, but some 
    133 hardware platforms don't like it.  If the status bar and console are flashing 
    134 every other frame, clear this variable.
    135 
    136 gl_keeptjunctions 0
    137 If you clear this, glquake will remove colinear vertexes when it reloads the 
    138 level.  This can give a few percent speedup, but it can leave a couple stray 
    139 blinking pixels on the screen.
    140 
    141 novelty features
    142 ----------------
    143 These are some rendering tricks that were easy to do in glquake.  They aren't 
    144 very robust, but they are pretty cool to look at.
    145 
    146 r_shadows 1
    147 This causes every object to cast a shadow.
    148 
    149 r_wateralpha 0.7
    150 This sets the opacity of water textures, so you can see through it in properly 
    151 processed maps.  0.3 is very faint, almost like fog.  1 is completely solid 
    152 (the default).  Unfortunately, the standard quake maps don't contain any 
    153 visibility information for seeing past water surfaces, so you can't just play 
    154 quake with this turned on.  If you just want to see what it looks like, you 
    155 can set "r_novis 1", but that will make things go very slow.  When I get a 
    156 chance, I will probably release some maps that have been processed properly 
    157 for this.
    158 
    159 r_mirroralpha 0.3
    160 This changes one particular texture (the stained glass texture in the EASY 
    161 start hall) into a mirror.  The value is the opacity of the mirror surface.
    162 
    163