<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">Short:        GLquake / GLqwcl (MiniGL/Warp3D renderer)
Author:       Christian Michael
Uploader:     Christian Michael (christian michael groenjord dk)
Type:         game/shoot
Version:      1.50
Requires:     68060 with FPU, 64MB RAM, Warp3D v4.2
Architecture: m68k-amigaos




BlitzQuake - GLQuake and GLQwcl ports by Christian Michael

GLqwcl/GLquake 68k (v1.0 - first Aminet-Release)

Based on quake/quakeworld by Frank Wille and Steffen Haeuser



New version 1.50 (581 012 bytes):

- recompiled using gcc 2.95.3-4 for the 68040/68060
- added "$VER: BlitzQuake 1.50 by Christian Michael" into the program
- use the mathieedoubtrans.library 46.00 from Matthias Henze in Sys:Libs/
- 122 364 bytes saved


Changes since 1.31 beta4 (703 376 bytes):

Recompiled with GCC V 2.95.3 (faster than vbcc)

IMPORTANT: needs at least 600K stack set manually

- Scripts for launching from quakedir: are included
- Demo and example-serverlist for GLqwcl included


Visuals:

- Added R5G6B5 lightmap format for better color-resolution
  Enable this new lightmap with startup-parameter -lm_RGB

- Discovered that additive beleding looks good on voodoo3
  Additive blending for lightballs was previously disabled.

 
Visuals (GLquake only):
- Added a new parameter -litfiles (enables colored lights)
  Litfiles archive, gl_flashblend 0 gl_fake_multitexture 1
  and r_litfiles 1 needed.

- Added new cvar: gl_glows.
  The effects are performance degrading but look very cool.

- Improved the look of fog (gl_fog 1)

- Added possibility to keep lightbulb-effects during dynamic
  lightmapping (gl_flashblend 0) if gl_glows is enabled.

  For best visuals try the combination of "gl_flashblend 0",
  "gl_glows 1" and "gl_fake_multitexture 1", "r_litfiles 1"
  and the startup-parameters "-litfiles -lm_RGB"


Performance:
- large general speedup (partly due to GCC)

- Decided to make GL_POINTS the default primitive for
  particles and removed the standard method completely.

- Made "r_models_maxdist" affect standard model-drawing

- Replaced "r_vertexarrays 2" with "r_cull_aggressive 1"
  and ensured that it will only discard peripheral objects

- Models: Sacrificed pr primitive shadecolor in favor of
  pr model shadecolor (gl_smoothmodels 0)


Performance (geometrycache - GLqwcl only):
- Geometrycache (-cachearrays) was rewritten and optimized
  to use GL_EXT_compiled_vertex_array which means almost
  same speed as the previous system, but with full clipping.

- Reduced requirements for cache indices by a factor 5,
  allowing for caching all aliasmodels in the new format.
  The cache currently uses around 8K/modelframe for remapped
  geometry and indices.

- model_LOD command removed. 
  Instead, I added a possibility to use lossy compression
  for model-geometry, in order to boost performance.
  This is a very simple form of LOD reduction. It works by
  allowing tolerance when searching for identical vertices.
  It can be enabled by the parameter -geometrycompress #,
  where # is in the range 1 to 8.

- The compiled arrays can be disabled with
  "gl_compiled_arrays 0", in which case it will use the
  standard glDrawElements pipeline (don't try - it is slower
  than normal vertexarrays without cache..)


Bugfixes:
- Fixed issues with alpha testing (ref value was too high)
- Fixed broken lightmap formats (GL_LUMINANCE/GL_ALPHA)
- Fixed details and controls submenus in GLquake
- Fixed bounding box culling for rotating models
  (bug in original src)
- Fixed memory bug and re-enabled default 2048 particles
- Fixed some rare crashes related to the experimental
  guardband-clipping in MiniGL


misc:
- removed local transformations "gl_local_transform" since
  it was of lower quality and only marginally faster than
  the current MiniGL pipeline.




Suggestions for further performance-improvements:

- Rewrite model loaders for compiled-vertexarrays
  (See gl_rmain.c in GLqwcl src for implementation)
- Rewrite inner loops in ASM (MiniGL and GLquake/GLqwcl)
- Rewrite particlesystem - current is slow and looks boring


Other suggestions:

- Fix AHI code
- Fix interpolation for shadows in GLquake
- Add some new funky effects :)
- Write fully OpenGL-compilant point-draw func for MiniGL
- Implement HalfLife bsp (see ThomazQuake/Darkplaces)

</pre></body></html>