quake III source documentation

Started by
4 comments, last by owiley 17 years, 7 months ago
I wanna start messing with the quake III source... does anyone know of any documentation that's been done for it or am I just gonna have to see how everything works together by myself, not that it will be too hard, it would just be nice to have some docs.
Artist 1st - Programmer 2nd(I'll get some material linked here sometime to support these claims, haha)
Advertisement
I'd start with the Icculus Quake3 source rather than the original one -- it's a little more portable and a lot cleaner.

They also have a message board and mailing list, though I'd just gun the source with cscope and start reading along.
I was checking out xreal too but I'm not sure I trust the stability of modified code... for some reason it makes me feel better knowing that I have the code used by the professionals, but I don't know. I guess I could take a shot at those. I like the graphical features of xreal. I tried evolutionq3 or something which is supposed to be a compilation of xreal and the one you mentioned but the pre-compiled demo of it didn't work on my comp... maybe that's why I don't trust the modified code.
Artist 1st - Programmer 2nd(I'll get some material linked here sometime to support these claims, haha)
Quote:Original post by etsuja
I was checking out xreal too but I'm not sure I trust the stability of modified code... for some reason it makes me feel better knowing that I have the code used by the professionals, but I don't know. I guess I could take a shot at those. I like the graphical features of xreal. I tried evolutionq3 or something which is supposed to be a compilation of xreal and the one you mentioned but the pre-compiled demo of it didn't work on my comp... maybe that's why I don't trust the modified code.


Xreal, EvolutionQ3, and other similar projects are quite different from the ioquake3 source found at Icculus. You can think of those projects as new engines built on top of the Q3 code, i.e. the Q3 code is the foundation for those engines. ioquake3 is not a new engine. It is intended to be used instead of the original source as the foundation for new projects. The original source has quite a few bugs which are fixed in the Icculus release, so your concerns about the "code used by the professionals" are unfounded. You can consider ioquake3 more stable than the original source release. It also has been ported to more platforms, it can be compiled with MingW on Windows (the original requires MSVC++), it works with SDL, and it has several enhancements such as support for OpenAL, Ogg Vorbis, and more. ioquake3 is a much better codebase to start with than the original.

You aren't going to find any detailed documentation on the engine internals, but there are some web sites that can help you out a bit. Code3Arena is a dead site which hasn't been updated in years, but it is full of modding tutorials that were written long before the source release. Those tutorials should help you wrap your head around the game code. The forums at the Quake Standards Group is a good place to ask for help when you are trying to follow the engine internals. Read through the archives in the Quake3 forum there and you should find some useful bits.
I'm actually not sure if I even wanna use the Q3 source... for what I want to use it for I'll end up having to modify it and write a lot of my own code. For example I'd want to have single skin character models instead of the 3 piece ones, and I'd want large outdoor area/terrain rendering, and there's alot of other stuff I'd most likely not even be utilizing in the engine. I might just see if I can piece together some existing libraries and form a game out of that. I don't really want to create an engine, just game specific code.
Artist 1st - Programmer 2nd(I'll get some material linked here sometime to support these claims, haha)
yeah but even if its old quake 3 engine is still powerful. You wouldn't have too much. Update the terrain and bsp render; add skinable character mesh; add 3d sound; add mp3 or ogg file support and you have a pretty decent engine. You could look at adding support for other things but they are very minor. You could convert to OOP (not hard since microsoft already did some of the coding 'i think') also when updating the render you would need to add some gpu shading.
Bring more Pain

This topic is closed to new replies.

Advertisement