Wednesday, August 24, 2005

Building Quake3 on GNU/Linux

step 1) Get the source from from here , unzip it to some directory, go to that directory
step 2) find -type f -exec dos2unix {} \;
on the unzipped directory (this is to remove \r\n windows characters, otherwise you will encounter strange sytanx errors in build)
step 3) Edit code/Construct file and remove -Werror from $BASE_CFLAGS = $COMMON_CFLAGS . '-g -Wall -Werror -O ';

so that gcc doesn’t stop on warning ..

You will get linuxquake3 in the code/install directory. Copy pak files from Quake3 installation to code/install/baseq3. That’s it

step 4) Go to code/install directory and run ./linuxquake3

I was able to build in my machine (Fedora Core 4). As the readme points out, you would need nasm, some xlibs etc already installed.

There are so many things to play with like

renderer - which contains all the rendering code, where you will find qgl calls
q3lcc - A modified lcc compiler which produces asm, which the q3asm uses to build the bytecode
qvm - the virtual machine which runs these bytecodes
ai - the great work of Jan Paul Van Waveran .. there is a thesis pdf of him on net, where he describes the ai
bspc - the bsp compiler, related things
Q3Radient - The full source for editor. Lots of things to learn, CSG(Constructive Solid Geometry) for eg.

these are my primary targets for exploration.
I tried modifying some q3ui code for removing cdkey but it didnt work. After that i tried modifying the renderer, like changing some transformation matrix, atleast it works .. more later

No comments: