About
@@ -143,6 +143,10 @@ QuakeSpasm 0.94.0 has initial support for playing the 2021 re-release content: C
Changes in 0.94.5
- Compatibility with new SDL2 versioning scheme.
+
- Fixed a potential undefined behavior in R_DrawAliasModel.
+
- Fixed parsing of the time argument of svc_fog server message. (it has been broken for more than 20 years and has never seem to have been used.)
+
- Other small improvements elsewhere in the code.
+
- Backported a few fixes to the bundled SDL2-2.0.22 version.
diff --git a/Quakespasm.html b/Quakespasm.html
index b56aa6bc..ceb34436 100644
--- a/Quakespasm.html
+++ b/Quakespasm.html
@@ -8,7 +8,7 @@
QuakeSpasm
-Page last edited: May 2022.
+Page last edited: June 2022.
@@ -72,8 +72,6 @@
-
-
QuakeSpasm
is a modern, cross-platform Quake engine based on
@@ -84,8 +82,6 @@ sound driver, some graphical niceities, and numerous bug-fixes and other improve
SDL is probably less buggy, but SDL2 has nicer features and smoother mouse input - though no CD support.
-
-
-
@@ -95,10 +91,7 @@ SDL is probably less buggy, but SDL2 has nicer features and smoother mouse input
-
-
-
Visit the
FitzQuake homepage for a full run-down of the engine's commands and variables.
@@ -120,7 +113,6 @@ where DRIVER may be alsa, dsp, pulse, esd ...
-
Quakespasm can play various external music formats, including MP3, OGG and FLAC.
- Tracks should be named like "track02.ogg", "track03.ogg" ... (there is no track01) and placed into "Quake/id1/music".
@@ -134,14 +126,12 @@ where DRIVER may be alsa, dsp, pulse, esd ...
-
The SDL2 variant of Quakespasm supports Xbox 360 style game controllers.
The default configuration uses the left analog stick for movement and the right for looking.
If your controller doesn't work you can try placing
this file in your Quake directory, it is a community-maintained database that adds support for more controllers to SDL2.
Cvars
-
- joy_deadzone - Fraction of the stick travel to be deadzone, between 0 and 1. Default 0.175.
@@ -153,9 +143,7 @@ where DRIVER may be alsa, dsp, pulse, esd ...
- joy_enable - Set to 0 to disable controller support. Default 1.
-
Buttons
-
Some of the controller buttons are hardcoded to allow navigating the menu:
@@ -187,7 +175,6 @@ where DRIVER may be alsa, dsp, pulse, esd ...
-
See the Downloads section to get the sourcecode, then below for platform specific instructions.
Quakespasm can also be built with the cross-platform Codeblocks.
Quakespasm's (optional) custom data is now stored in the file quakespasm.pak. This file should be placed alongside your quakespasm binary and id1 directory.
@@ -222,21 +209,24 @@ Compile time options include
QuakeSpasm 0.94.0 has initial support for playing the 2021 re-release content: Copy the quakespasm binary to your rerelease installation and run quakespasm as you normally do.
+
+
-
-
-
- Compatibility with new SDL2 versioning scheme.
+- Fixed a potential undefined behavior in R_DrawAliasModel.
+- Fixed parsing of the time argument of svc_fog server message. (it has been broken for more than 20 years and has never seem to have been used.)
+- Other small improvements elsewhere in the code.
+- Backported a few fixes to the bundled SDL2-2.0.22 version.
+
-
- Fixed getting stuck with loading plaque upon attempting to load a bad save from the menu
@@ -256,9 +246,9 @@ Compile time options include
- Thanks to Andrei Drexler, 'atsb' and 'temx' for their several patches.
+
-
- Handle sky textures with non-standard sizes and warn about them (e.g. ad_tears)
@@ -266,9 +256,9 @@ Compile time options include
- Updated included SDL2 to latest version 2.0.18.
+
-
- 2021 rerelease: Support for playing the latest update.
@@ -277,17 +267,17 @@ Compile time options include
- 2021 rerelease: Look for QuakeEX.kpf under userdir, too.
+
-
- Fix lightmap issues after vkQuake surface mark/cull optimizations merge (sf.net bug/50)
+
-
- Initial support for playing the 'Quake 2021 re-release' content (thanks to Andrei Drexler for bulk of the work, Guillaume Plourde for Q64 bsp format support.)
@@ -310,9 +300,9 @@ Compile time options include
- Source repository moved to git.
+
-
- Lightmaps are now dynamically allocated (from QSS), and BLOCK_WIDTH/HEIGHT raised from 128 to 256.
@@ -323,9 +313,9 @@ Compile time options include
- Update the third-party libraries. Other fixes/cleanups.
+
-
- Fixed a fog regression which was introduced in 0.93.0.
@@ -337,9 +327,9 @@ Compile time options include
- Update the third-party libraries. Other fixes/cleanups.
+
-
- Raise default "joy_deadzone_trigger" cvar to 0.2.
@@ -380,9 +370,9 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
- Update the third-party libraries.
+
-
- Fixed large menu scale factors (was broken in 0.92.0).
@@ -390,9 +380,9 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
- Updated some of the third-party libraries.
+
-
- SDL2 Game Controller support.
@@ -410,12 +400,10 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
- Updated some of the third-party libraries. Other fixes/clean-ups.
+
-
-
Bugfixes
-
- Fix unwanted fog mode change upon video restart.
@@ -433,35 +421,27 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
- Prevent a possible vulnerability in MSG_ReadString (old Q1/Q2 bug).
-
Visual improvements
-
- New cvars r_lavaalpha, r_slimealpha, r_telealpha for fine-tuning specific liquid opacities (from DirectQ/RMQEngine, non-archived, default to 0), and new worldspawn keys _wateralpha, _lavaalpha, _slimealpha, _telealpha, _skyfog (unique to Quakespasm, similar to the behaviour of the "fog" worldspawn key).
- GLSL gamma is now supported on older hardware without NPOT extension.
-
Interface improvements
-
- New r_pos command to show player position.
- NaN detection in traceline with "developer 1" set now warns instead of errors.
-
Code cleanup / Other
-
- Update third-party libraries.
-
Raised limits
-
- Default max_edicts 8192 (was 2048) and no longer saved to config.cfg.
@@ -470,12 +450,10 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
- Raised MAX_SFX to 1024 (was 512).
+
-
-
Bugfixes
-
- Fix dynamic light artifact where changing lightmap are rendered one frame late (bug introduced in 0.90.0).
@@ -489,18 +467,14 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
- Fix crash on out-of-bounds skin number.
-
Performance
-
- Use multithreaded OpenGL on OS X for better performance.
- New, faster mdl renderer using GLSL. Disable with "-noglslalias".
-
Visual improvements
-
- New gamma correction implementation using GLSL. Fixes all known gamma issues (affecting the full display, persisting after quitting, or darkening the screen on OS X). Disable with "-noglslgamma".
@@ -509,9 +483,7 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
- r_noshadow_list cvar added (from MarkV.)
-
Interface improvements
-
- Support pausing demo playback with the "pause" command.
@@ -521,18 +493,16 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
- Some spam moved from developer 1 to 2: "can't find tga/lit/ent", "trying to load ent", "bad chunk length", "meshing", "PR_AlocStringSlots: realloc'ing"
-
Code cleanup
-
- Clean up IDE project files to build on fresh systems.
- Update 3rd-party libraries.
+
-
- Fix issues on Windows systems with DPI scaling.
@@ -576,9 +546,9 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
- Other fixes and clean-ups.
+
-
- Fixes for several undefined behaviors in C code (gcc-4.8 support.)
@@ -600,9 +570,9 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
- Several other minor fixes/cleanups.
+
-
- Made Quake shareware 1.00 and 1.01 versions to be recognized properly.
@@ -625,9 +595,9 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
- Miscellaneous source code cleanups.
+
-
- Added support for cross-level demo playback
@@ -643,9 +613,9 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
- Several other small changes mostly invisible to the end-user
+
-
- More work for string buffer safety
@@ -654,9 +624,9 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
- Minor SDL video fixes.
+
-
- SDL input driver updated adding native keymap and dead key support to the console
@@ -673,9 +643,9 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
- Several code updates from uHexen2 project, several code cleanups.
+
-
- Implement music (OGG, MP3, WAV) playback
@@ -691,9 +661,9 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
- Other minor sound and cdaudio updates
+
-
- Fix the "-dedicated" option (thanks Oz) and add platform specific networking code (default) rather than SDL_net
@@ -716,7 +686,6 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
-
- Replace the old "Screen size" slider with a "Scale" slider
@@ -735,7 +704,6 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
-
- 64 bit CPU support
@@ -759,7 +727,6 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
-
- Quake and Quakespasm are released under the
@@ -770,7 +737,6 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
-
-
@@ -785,7 +751,6 @@ quakespasm (cl_alwaysrun 1, cl_forwardspeed 200, cl_backspeed 200)
-
-
diff --git a/Quakespasm.txt b/Quakespasm.txt
index 7445bbfc..7b93f035 100644
--- a/Quakespasm.txt
+++ b/Quakespasm.txt
@@ -61,7 +61,7 @@
______________________________________________________________________
- Page last edited: May 2022.
+ Page last edited: June 2022.
1. About
@@ -270,6 +270,16 @@
o Compatibility with new SDL2 versioning scheme.
+ o Fixed a potential undefined behavior in R_DrawAliasModel.
+
+ o Fixed parsing of the time argument of svc_fog server message. (it
+ has been broken for more than 20 years and has never seem to have
+ been used.)
+
+ o Other small improvements elsewhere in the code.
+
+ o Backported a few fixes to the bundled SDL2-2.0.22 version.
+
5.2. Changes in 0.94.4