glqnotes.txt 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. Glquake v0.99, Quake v1.09 release notes
  2. 3dfx owners -- read the 3dfx.txt file.
  3. On a standard OpenGL system, all you should need to do to run glquake is put
  4. glquake.exe in your quake directory, and run it from there. DO NOT install
  5. the opengl32.dll unless you have a 3dfx! Glquake should change the screen
  6. resolution to 640*480*32k colors and run full screen by default.
  7. If you are running win-95, your desktop must be set to 32k or 64k colors
  8. before running glquake. NT can switch automatically.
  9. Theoretically, glquake will run on any compliant OpenGL that supports the
  10. texture objects extensions, but unless it is very powerfull hardware that
  11. accelerates everything needed, the game play will not be acceptable. If it
  12. has to go through any software emulation paths, the performance will likely
  13. by well under one frame per second.
  14. 3dfx has provided an opengl32.dll that implements everything glquake needs,
  15. but it is not a full opengl implementation. Other opengl applications are
  16. very unlikely to work with it, so consider it basically a "glquake driver".
  17. See the encluded 3dfx.txt for specific instalation notes. 3dfx can only run
  18. full screen, but you must still have your desktop set to a 16 bit color mode
  19. for glquake to start.
  20. resolution options
  21. ------------------
  22. We had dynamic resolution changing in glquake for a while, but every single
  23. opengl driver I tried it on messed up in one way or another, so it is now
  24. limited to startup time only.
  25. glquake -window
  26. This will start glquake in a window on your desktop instead of switching the
  27. screen to lower resolution and covering everything.
  28. glquake -width 800 -height 600
  29. Tries to run glquake at the specified resolution. Combined with -window, it
  30. creates a desktop window that size, otherwise it tries to set a full screen
  31. resolution.
  32. You can also specify the resolution of the console independant of the screen
  33. resolution.
  34. glquake -conwidth 320
  35. This will specify a console resolution of 320 by 240 (the height is
  36. automatically determined by the default 4:3 aspect ratio, you can also
  37. specify the height directly with -conheight).
  38. In higher resolution modes such as 800x600 and 1024x768, glquake will default
  39. to a 640x480 console, since the font becomes small enough at higher
  40. resolutions to become unreadable. If do you wish to have a higher resolution
  41. console and status bar, specify it as well, such as:
  42. glquake -width 800 -height 600 -conwidth 800
  43. texture options
  44. ---------------
  45. The amount of textures used in the game can have a large impact on performance.
  46. There are several options that let you trade off visual quality for better
  47. performance.
  48. There is no way to flush already loaded textures, so it is best to change
  49. these options on the command line, or they will only take effect on some of
  50. the textures when you change levels.
  51. OpenGL only allows textures to repeat on power of two boundaries (32, 64,
  52. 128, etc), but software quake had a number of textures that repeated at 24
  53. or 96 pixel boundaries. These need to be either stretched out to the next
  54. higher size, or shrunk down to the next lower. By default, they are filtered
  55. down to the smaller size, but you can cause it to use the larger size if you
  56. really want by using:
  57. glquake +gl_round_down 0
  58. This will generally run well on a normal 4 MB 3dfx card, but for other cards
  59. that have either worse texture management or slower texture swapping speeds,
  60. there are some additional settings that can drastically lower the amount of
  61. textures to be managed.
  62. glquake +gl_picmip 1
  63. This causes all textures to have one half the dimensions they otherwise would.
  64. This makes them blurry, but very small. You can set this to 2 to make the
  65. textures one quarter the resolution on each axis for REALLY blurry textures.
  66. glquake +gl_playermip 1
  67. This is similar to picmip, but is only used for other players in deathmatch.
  68. Each player in a deathmatch requires an individual skin texture, so this can
  69. be a serious problem for texture management. It wouldn't be unreasonable to
  70. set this to 2 or even 3 if you are playing competatively (and don't care if
  71. the other guys have smudged skins). If you change this during the game, it
  72. will take effect as soon as a player changes their skin colors.
  73. GLQuake also supports the following extensions for faster texture operation:
  74. GL_SGIS_multitexture
  75. Multitextures support allows certain hardware to render the world in one
  76. pass instead of two. GLQuake uses two passes, one for the world textures
  77. and the second for the lightmaps that are blended on the textures. On some
  78. hardware, with a GL_SIGS_multitexture supported OpenGL implementation, this
  79. can be done in one pass. On hardware that supports this, you will get a
  80. 60% to 100% increase in frame rate. Currently, only 3DFX dual TMU cards
  81. (such as the Obsidian 2220) support this extension, but other hardware will
  82. soon follow.
  83. This extension will be autodetected and used. If for some reason it is not
  84. working correctly, specify the command line option "-nomtex" to disable it.
  85. GL_EXT_shared_texture_palette
  86. GLQuake uses 16bit textures by default but on OpenGL implementations
  87. that support the GL_EXT_shared_texture_palette extension, GLQuake will use
  88. 8bit textures instead. This results in using half the needed texture memory
  89. of 16bit texture and can improve performance. This is very little difference
  90. in visual quality due to the fact that the textures are 8bit sources to
  91. begin with.
  92. run time options
  93. ----------------
  94. At the console, you can set these values to effect drawing.
  95. gl_texturemode GL_NEAREST
  96. Sets texture mapping to point sampled, which may be faster on some GL systems
  97. (not on 3dfx).
  98. gl_texturemode GL_LINEAR_MIPMAP
  99. This is the default texture mode.
  100. gl_texturemode GL_LINEAR_MIPMAP_LINEAR
  101. This is the highest quality texture mapping (trilinear), but only very high
  102. end hardware (intergraph intense 3D / realizm) supports it. Not that big of
  103. a deal, actually.
  104. gl_finish 0
  105. This causes the game to not issue a glFinish() call each frame, which may make
  106. some hardware run faster. If this is cleared, the 3dfx will back up a number
  107. of frames and not be very playable.
  108. gl_flashblend 0
  109. By default, glquake just draws a shaded ball around objects that are emiting
  110. light. Clearing this variable will cause it to properly relight the world
  111. like normal quake, but it can be a significant speed hit on some systems.
  112. gl_ztrick 0
  113. Glquake uses a buffering method that avoids clearing the Z buffer, but some
  114. hardware platforms don't like it. If the status bar and console are flashing
  115. every other frame, clear this variable.
  116. gl_keeptjunctions 0
  117. If you clear this, glquake will remove colinear vertexes when it reloads the
  118. level. This can give a few percent speedup, but it can leave a couple stray
  119. blinking pixels on the screen.
  120. novelty features
  121. ----------------
  122. These are some rendering tricks that were easy to do in glquake. They aren't
  123. very robust, but they are pretty cool to look at.
  124. r_shadows 1
  125. This causes every object to cast a shadow.
  126. r_wateralpha 0.7
  127. This sets the opacity of water textures, so you can see through it in properly
  128. processed maps. 0.3 is very faint, almost like fog. 1 is completely solid
  129. (the default). Unfortunately, the standard quake maps don't contain any
  130. visibility information for seeing past water surfaces, so you can't just play
  131. quake with this turned on. If you just want to see what it looks like, you
  132. can set "r_novis 1", but that will make things go very slow. When I get a
  133. chance, I will probably release some maps that have been processed properly
  134. for this.
  135. r_mirroralpha 0.3
  136. This changes one particular texture (the stained glass texture in the EASY
  137. start hall) into a mirror. The value is the opacity of the mirror surface.