Copyright: © Bjoern Stensrud


Help Contents
Contents

Disclaimer

Purpose of this Utility

Quick Start

Predefined Configurations

Files

Uninstall

Configuring

Problems

How to register

Feedback


Disclaimer - Disclaimer
Disclaimer

This program is freeware, which means it may be freely distributed. Feel free to make any modifications for your own use, but written consent must be given by the author before distribution.

The author does not take any responsibility for any damage inflicted by this tool, especially regarding the overclocking section. USE THIS SETTING AT YOUR OWN RISK! But please don't feel uncomfortable, all the other settings are perfectly safe

If you like this program, you may register for $10, and get free upgrades and support. See the How to register section for details.


Purpose of this Utility - Purpose of this Utility
Purpose of this Utility

After spending a lot of time trying to figure out all the strange OpenGL and 3Dfx variables affecting GLQuake, and aiming to configure them for the highest possible framerate, I decided to write this little tool to help the process. I spent some time searching the net for all relevant variables, and have collected them in a configuring part of the tool. It includes a frontend as well, where you can

•	Choose among predefined configurations

•	Create a configuration of your own

•	Launch any game based on the Quake engine by ID software with your active settings

I think there are a lot of players out there using GLQuake who have never bothered with or even don’t know there’s a lot of performance to be gained by tweaking these variables.

Personally I measured about 28 frames pr. second (fps) in “timedemo demo2”, before setting any OpenGL or 3Dfx variables on my Pentium 208 (83MHz bus) and Orchid Righteous 3D. I found this a bit disappoiting, and after a lot of  tweaking I finally ended up on 56 fps. That’s an 100% increase! What I have to pay for the increase is a little tearing, a slight decrease in resolution and some minor bugs (stray pixels). This is hardly noticeable, but I can tell you the deathmatch experience before compared to now is like night and day!


Quick Start - Quick Start
Quick Start

For those of you who would rather go back to your Quaking as quick as possible, just follow these steps.

1.	Launch GLQPlus.exe

2.	Choose a configuration in the combobox at the top

3.	Click on the Tools button and specify your Working dirs and Command lines for the games you are using, in the Files section of the page titled “Setup”.

4.	If you are using a game that’s not available in the combobox, just right click on it and chose Add.

5.	If you are using a modification of a game, specify commandlines for those too. If the modification isn’t available, right click on the Modification combobox and choose Add.

6.	Specifiy a path to Quakespy if you have it installed.

7.	Click OK

8.	Chose the game and modification you want to launch.

9.	Click on Launch! to start the game with your chosen settings.

If you want to use QuakeSpy to connect to servers, specify GLQplus.bat and GLQWplus.bat as your Quake and QuakeWorld command lines in the View/Options/Gameplay page in QuakeSpy.


Predefined Configurations - Predefined Configurations
Predefined Configurations

When launching GLQ+ you can chose among these predefined configurations:

Ultimate fps

This is the fastest configuration I have experienced so far. Tearing and bugs might be observed. Personally I hardly notice them, but it might be more evident on slower systems. Uses real lighting instead of the default shaded ball, since I was unable to measure any difference in performance. Might be faster on some systems if  turned off.

Max fps w/o tearing

Same as above, but uses vertical syncronization to avoid tearing.

Max fps w/o bugs

Same as the first, but do not enable tricks in the rendering process which might cause bugs.

Max fps w/o both

The two above configurations combined.

Original

No variables set.

None of the configurations use overclocking.


Files - Files
Files

GLQ+ consists of / creates these files:

•	Glqplus.cfg: The OpenGL and Quake related variables are set in this file, which is automatically executed by the game on startup via GLQ+ or the Glqplus.bat files. This file is located in the data directories of each specified game. Ie ...\Quake\ID1\

•	...\Quake\ID1\Glqwplus.cfg: Specific file for QuakeWorld with the QuakeWorld settings located on the Quake page.

•	GLQplus.bat: This file sets the 3Dfx variables and launches a game using the specified command line and settings. This file is located in the working directories of each specified game. Ie ...\Quake\

•	GLQWplus.bat: Same as above, except it launches QuakeWorld. Use these files as commandlines from QuakeSpy.

•	...\GLQPlus\GLQPlus.dat: Data file containing the selectable configurations.

•	...\GLQPlus\GLQPlus.ini: File containing filedata for  the games and modifications.

•	...\GLQPlus\GLQPlus.hlp: This help file

•	...\GLQPlus\GLQPlus.exe: The GLQ+ executable


Uninstall - Uninstall
Uninstall

To uninstall GLQ+, just delete the GLQplus directory and all the contained files, and the game specific files described under Files. Note: GLQ+ no longer affects Quake or any other games when they are launched normally without GLQ+ or the GLQ+ bat files.


Configuring - Configuring
Configuring

Click on the TOOLS button at either side of the GLQ+ logo. Select a predefined configuration to modify, or click the NEW button to the left of the combobox and specify a name for a new configuration. To delete existing configurations, choose a configuration and click the DELETE button at the right side.

Please note that when selecting NEW, the new config will be based on the last selected config. So let's say you want to make your own modifications to the "Ultimate fps" config, just select it in the combobox, click NEW and enter a config. description.

The rest of this section describes the settings in the configuration tool. All settings have hints, so if you hold the mouse pointer above a particular setting a couple of seconds, a short text explaining the setting will appear.

More:

Setup page

Quake page

OpenGL page

3Dfx page


Setup page

Files section

Specifies the available Games and their Working directory’s and let you specify Command lines for Modifications of the games. Please note that command line options concerning resolution, color depth and window mode, memory, sound and joystick  are automatically added by GLQ+, according to the settings in the Screen and System sections (see below).

Example of command line: GLQuake.exe -game Sauron

Right click on Game or Modification for a popup meny, where you can choose to add/remove a game/modificaiton.

So let’s say you want to add Quake2 to GLQ+. Launch GLQ+, click on the tools button and right click on the Game combobox. Type Quake2 in the combobox, and specifiy a Command line for Normal game.

If you want to add, say Missionpack 2 to the Modifications, just right click on the combobox and choose Add. Type Missionpack 2 in the combobox, and specifify a Commmand line like Glquake.exe -rogue.

Screen section

Settings for screenmode and windowmode. On Voodoo Graphics hardware, the actual resolution of 640x480 is not affected, only the viewport changes when lowering the resolution (meaning you get a border around the playarea). Resolutions above 640x480 is not supported by Voodoo Graphics hardware.

Recommended settings are the 512x384 screenmode, which gives about 15fps increase. If you stretch the image on your monitor you can still fill the entire screen. With bilinear filtering and mipmapping the decrease in resolution really isn't noticeable.

System section

Heapsize specifies how much memory should be allocated for the game. Options for Sound, CD audio and Joystick.


Quake page

Effects section

The Shadows options makes all objects cast shadows. Transparent water makes it possible to see through water on maps with the proper VIS information. If you want this effect on maps without the VIS info (original Quake maps), type "r_novis 1" in the console. This will however cause a substantial performance loss. The Mirror option changes the stained glass texture (can be found in the Easy hall on the Start map) into a mirror. When enabling any of the two last options, an Opaque field will appear, where you can specifiy the opacity of the water or the mirror.

Note: Each enabled effect will imply a loss in performance.

View/controls section

Draw weapon toggles if you want the weapon to be visible when playing, if you turn it off you get a better view and gains a little fps. It actually improves my aiming with Crosshair turned on. Filtered mouse make movements less jerky, especially in QuakeWorld, but the mouse also becomes less responsive. Sensitivity is an integer value, specifing how fast the mouse responds.

QuakeWorld section

Contains QuakeWorld specific settings, which might be used in Quake2 as well. Transparent statusbar specifies if you want to see through the statusbar at the bottom with your ammo/armor/health. HUD on left/right side only works with viewsize 100, and shows your weapons with ammo on either left or right side of the screen. Pushlatency, Rate and Predict players is explained on www.quakeworld.net.


OpenGL page

Textures section

Environment resolution specifies the resolution of the textures used for mapping the static objects in GLQuake (everything except players and monsters), and Player resolution specifies the resolution of the textures used on players. Use '0' for full resolution, 1 for half the resolution, 2 for a quarter and so on. Texture mode is how textures are filtered when filling polygons, listed simplest to best.

Recommended settings for Environment resolution is 0, at least on 3Dfx hardware, since little to no performance is gained by using lower resolutions. If you are playing deathmatches, Player resolution should be set to 1 or 2, since a lot of players onscreen at once can cause texture trashing and dips in framerate. But with the latest releases of GLQuake with 8 bits textures, full resolution or at least half should do fine. Choose bilinear and mipmap filtering as you wish, some prefer the details of unfiltered images other prefer the smoothness of the filthering. Neither affects framerate on 3Dfx cards, since it’s strictly hardware based.

Lighting section

Real light is the normal dynamic light used in regular Quake, instead of the default shaded ball. Palette shifting means the changes in color and brightness when you pick up objects, shoot, move under water, have quad damage and so on.

Recommended settings for Real light is to keep it on, at least when deathmatching, since the shaded ball can often make it hard to see when there's a lot of action. The shaded ball is supposed to give an increase in performance, but I only measured about a 0.5 fps increase in "timedemo demo2". Palette shifting is recommended kept off, since shifting a 16/24bit palette is time consuming, and makes your framerate drop every time you shoot, pick up objects, gets hit ++

Rendering section

Quake uses a ztrick to avoid clearing the Z-buffer, thus saving time. But this halves the precision, and you might see pixels/edges popping through surfaces. Enabling Clear Z-buffer avoids this. If not selecting Use colinear vertexes, these will be dropped from the rendering process, but will cause a few stray blinking pixels in certain situations. If not selecting Issue GLFinish(), this command will not be issued at the end of the rendering process, saving some cleanup time.

Recommended settings for this section is to try leaving all settings off, as they will give an 5-10 fps increase. The mentioned bugs are hardly noticable when playing. If you experience serious bugs, try enabling the Issue GLFinish() option, as it may cause some hardware to bug.


3Dfx page

Screen section

Refresh rate is the rate your monitor draws pictures, higher rates will give loss of performance, at least with the RamDac on Voodoo Graphics boards. Disabling Sync to refresh rate turns off syncing to the monitors vertical refresh rate so the screen gets refreshed before its fully written on the monitor. When enabling Set gamma, specifiy a gamma value above 1 (above 2 is not recommended) for a brighter display, below 1.0 for a darker display. Show 3Dfx logo enables the spinning logo when activating the card.

Rendering section

Sync bufferswap forces Quake to wait for the vertical sync signal before swapping backbuffer/frontbuffer. Time can be saved by swapping instantly, but tearing of images can be observed. Personally I hardly notice the tearing, and find it worth the increase of 5-6 fps in framerate. Use texturemapping is recommended left on, as it won't make the game very playable without it. Lens flare should be self-explanatory, and using it will decrease performance.

Hardware section

Fast memory option enables fast DRAM configuration and EDO timing. The Fast PCI read option subtracts WaitStates on PCI Reads (Voodoo -> PCI). There is no reason to turn these off.

The Overclock the Voodoo chip setting is recommended left at the default, but you might ON YOUR OWN RISK try higher settings to gain some performance. But as the Voodoo chips already are very hot on 50MHz, I would recommend using a fan when overclocking, to avoid long term damage to the chips.

WARNING: If you experience bugs out of the ordinary or lockups when using higher clock settings, you should decrease it to avoid damage to the chips.


Problems - Problems
Problems

•	Out of environment space

If you get this message when launching the .bat files, start the Explorer and locate your Quake directory. Right click on the GLQplus.bat or GLQWplus.bat file, and select Properties. Then select the Memory page, open the Initial environment combobox and select "2048". Click OK, and your .bat file should launch without errors.


How to register - How to register
How to register

Registering is US $10, UK £7 or NOK 75,- The registration includes free updates and support via e-mail, as well as relevant information regarding GLQuake/World.

The best way to register, is to use an international money order. Ask on your local post office for details. Make it payable to:

Bjoern Stensrud

Klaebuveien 158D

N-7031 Trondheim

NORWAY

You may also wire the money to Postbanken: 0540 43 82707

US, UK or Norwegian currency is also acceptable.

Please remember to supply your e-mail adress when registering.


Feedback - Feedback
Feedback

Feel free to e-mail opinions, bugs, missing settings and requests for support for other 3D chipsets (include list of variables) to:

•	bjoernst@idi.ntnu.no

Please read the web pages at http://www.idi.ntnu.no/~bjoernst/quake/glqplus.html before e-mailing problems and bugs.