Once QuakeWorld is installed alongside your Quake files, you can start it up like:
./qwcl +connect some.server.address
See section Related Software for info about some nifty front ends for QuakeWorld that make finding servers
easy.
lib3dfxgl.so •
With Quakeworld version 2.30, an alternative to the Mesa library is available. lib3dfxgl.so is a
mini−GL driver optimized for Quake that provides slightly better framerates than Mesa. This is a port
of a driver that 3Dfx developed for Quake under Windows, and apparently not all of its features work
properly yet. So hopefully we can expect its performance to improve with time.
Linux Quake HOWTO
Installing the RPM packages 14
Like Mesa, lib3dfxgl.so requires Glide in order to access your 3Dfx card. The Quakeworld
packages come with a script, glqwcl.3dfxgl for running Quakeworld with this library on glibc
systems. The next paragraph explains how to run Quakeworld with lib3dfxgl.so on a libc5
system. On a glibc system in order for this script to work,the glqwcl executable must not be
setuid, nor should you run it as root. glqwcl will silently load Mesa rather than lib3dfxgl.so if
it runs with root permissions. This non−root requirement implies that you have the
/dev/3dfx driver installed.
On a libc5 system, you need to create a symbolic link to lib3dfxgl.so called
libMesaGL.so.2 like so:
cd /usr/local/games/quake
ln −sf lib3dfxgl.so libMesaGL.so.2
Then start Quakeworld from a script that tells $LD_LIBRARY_PATH to look in the current
directory:
#!/bin/sh
LD_LIBRARY_PATH=".:$LD_LIBRARY_PATH" ./glqwcl $*
You can tell which driver is being loaded by looking for output like the following in your console as
Quakeworld starts:
GL_VENDOR: 3Dfx Interactive Inc.
GL_RENDERER: 3Dfx Interactive Voodoo^2(tm)
GL_VERSION: 1.1
GL_EXTENSIONS: 3DFX_set_global_palette WGL_EXT_swap_control GL_EXT_paletted_texture If GL_VENDOR says Brian Paul rather than 3Dfx Interactive Inc., that means Mesa is
still being used rather than the miniport dirver.
glqwcl.glx ++ •
glqwcl.glx is linked against standard OpenGL libraries instead of Mesa. This allows Quakeworld
to run on other 3D hardware that is supported by other OpenGL implementations. At this time, I dont'
know of any OpenGL implementations that support hardware other than 3Dfx, but this renderer
ensures that when they appear, we'll be able to play Quakeworld with them.
Use of the GLX interface also removes GL Quake II's dependency on SVGAlib for keyboard and
mouse input.
This is a GLX application, and as such, must be run from X.
You can use this client with Mesa/3Dfx if you install Mesa and Glide as explained in the previous
section, then set the $MESA_GLX_FX environment variable to "fullscreen" before you run quake2:
export MESA_GLX_FX=fullscreen
Linux Quake HOWTO
Installing the RPM packages 15
./glqwcl.glx +_windowed_mouse 1
Why the +_windowed_mouse 1 option? Remember that this is an X application which happens
to use your 3Dfx card. Even though the display takes up your entire screen, Quakeworld is stil
running in a window. This means that if you're not very careful, you could move the mouse pointer
outside the Quakeworld window, and Quakeworld will suddenly stop responding to mouse and
keyboard input. +_windowed_mouse 1 avoids this problem by telling glqwcl.glx to grab the
mouse and not let it move outside its window.