Commit Graph

3206 Commits

Author SHA1 Message Date
Yamagi e42d2736fa Fix soldiers never showing their pain skins as long as they're alive.
Since `self->helth` is set after calling `master_start()`
`self->max_health is always 0. Found by @drakonorodny and
analyzed by @BjossiAlfreds. Closes #761.
2021-11-04 18:35:47 +01:00
Yamagi 4456eccc8f
Merge pull request #760 from BjossiAlfreds/entalloc
Made the game able to handle entity overload better
2021-11-04 16:37:07 +01:00
Yamagi 8bb845b037 Fix potential memory leak in R_Upload8() in GL1.
This is a corner case, next to unlikely that anyone would have ever hit
it. That's why my tests with asan didn't find the leak. The if case are
paletted textures which must be enabled by setting `gl1_palettedtexture`
to 1 and requires an GPU with support for `GL_EXT_paletted_texture`.
Nvidia dropped support for that in 2005. Additionally a sky texture
must be uploaded.
2021-11-01 18:42:40 +01:00
Yamagi b16b1b13d0
Merge pull request #758 from BjossiAlfreds/lateargs
Fixed incorrect handling of - in late args and simplified code
2021-11-01 18:35:30 +01:00
Yamagi 76b501b64b Update stb_vobis.h to af1a5bc.
This brings several small bugfixes and more robust handling of files
without comment / tag header. It's not mentioned in the changelog,
but at least for dhewm3 updating to this latest version fixed some
problems with missdecoded files on MacOS when running on the M1 aarch64
CPUs.
2021-11-01 16:49:47 +01:00
Yamagi 67f22cce17 Update std_image and stb_image_resize to af1a5bc.
This brings a lot of bugfixes, most of them are irrelevant for us. At
least as long as the game is run with standard assets...
2021-11-01 16:41:22 +01:00
Yamagi 5eba52008b Belatedly bump the version number to 8.01pre. 2021-10-31 17:25:55 +01:00
Yamagi 8dde5b8539 Replace hard coded array with malloc() to prevent stack overflow.
This was an issue an Windows with it's small stack. It didn't trigger on
Linux. While at it make the code a little bit more robust by allocating
exactly the amount of data we need and not some arbitrary guess.
2021-10-31 17:08:30 +01:00
Daniel Gibson 3873c76e12 Add r_2D_unfiltered CVar, improve r_nolerp_list handling
Setting r_2D_unfiltered to 1 (0 is default), 2D elements (GUI, menu,
console) are rendered without texture filtering in GL1 and GL3, while
everything else is still rendered with whatever is set in gl_texturemode

This setting (and now also gl_nolerp_list) is applied immediately,
so no vid_restart is needed.

refs #752
2021-10-30 20:42:43 +02:00
BjossiAlfreds f6d9ffc45c Late args parser now uses one string build instead of two 2021-10-30 15:59:50 +00:00
Daniel Gibson 568602ab49 Support starting maps with '-' from commandline, fix #757
like ./quake2 +map sgc9-1
the problem was that everything from '-' to the next '+' (which starts
a command) was skipped; the intention of that (original Quake2) code
probably was to allow skipping something like "-datadir bla", though
Quake2 never supported arguments starting with '-' (until *we* added
-datadir and -portable); maybe that's a leftover from Quake1.
Anyway, the more correct way (that allows '-' in filenames) is to check
for a space before '-': so `quake2 +map base1 -portable` still works,
and now `quake2 +map sgc9-1` works as well
2021-10-30 17:04:18 +02:00
Yamagi 9a11251740
Merge pull request #742 from 0lvin/benchmark
Update for benchmark mode
2021-10-30 09:39:41 +02:00
BjossiAlfreds c3b57bc81d Made the game able to handle entity overload better 2021-10-29 17:54:26 +00:00
BjossiAlfreds ec28387da4 Fixed incorrect handling of - in late args and simplified code 2021-10-29 03:25:23 +00:00
Yamagi 9de9939fe0
Merge pull request #751 from BjossiAlfreds/weapframe
Fixed updated gunangles and gunoffset not always being sent to client
2021-10-25 10:10:49 +02:00
Denis Pauk 1e0d75857b Use separate r_scale8bittextures for image scale
Rename {sw,gl}_retexturing variables to r_retexturing in code.
2021-10-17 11:11:05 +03:00
Denis Pauk c280c408b1 dont collect statistics with cl_showfps=0 2021-10-16 23:27:56 +03:00
Denis Pauk 4eb2d95ccd limit timedemo to vid_maxfps * 5 2021-10-16 23:26:46 +03:00
Denis Pauk fa1f5c2c84 Never sleep between frames with timedemo 2021-10-16 14:38:11 +03:00
Denis Pauk 012862b58d set currtime before Qcommon_Frame once
Make Qcommon_Frame and Qcommon_Mainloop static and minimize calls
for get current time, it takes 7% in some profiling cases.

We get current time twice before Qcommon_Frame(as Sys_Microseconds)
and inside it(as Sys_Milliseconds), and we can do it once.
2021-10-16 14:09:22 +03:00
Denis Pauk 11bb96401f soft: set current frame before use worldentity 2021-10-16 12:35:22 +03:00
Denis Pauk 7576d2d300 gl3: make currententity local 2021-10-16 12:35:04 +03:00
Denis Pauk 46c654b379 gl1: use local currentmodel 2021-10-16 12:34:32 +03:00
Denis Pauk 93ab5896e9 gl3: port submodel load code from vk render(8bd39ad5) 2021-10-16 12:34:23 +03:00
Denis Pauk 84773d7d79 gl3: use local model on load(35d598bc) 2021-10-16 12:34:15 +03:00
Denis Pauk 423c3fa299 gl3: preserve cache on free slots in image and models list(aa6032f0) 2021-10-16 12:33:51 +03:00
Denis Pauk 330830fc38 gl1: preserve cache on free slots in image and models list(aa6032f0) 2021-10-16 12:33:13 +03:00
Denis Pauk e3a83c6b32 add const to Mod_ClusterPVS 2021-10-16 12:32:04 +03:00
Denis Pauk f3f8c9a1f6 soft: make r_worldentity local 2021-10-15 23:39:34 +03:00
Denis Pauk 083cfca305 gl1: make currententity local 2021-10-15 23:37:56 +03:00
Denis Pauk 2d1a090feb gl: use local currentmodel 2021-10-15 23:37:56 +03:00
Denis Pauk 2c942d83f1 gl: use local model on load(35d598bc) 2021-10-15 23:37:56 +03:00
Denis Pauk d8eb64cdcd gl1: port submodel load code from vk render(8bd39ad5) 2021-10-15 23:37:53 +03:00
Denis Pauk 34fb8d45b0 soft: Use common RadiusFromBounds 2021-10-15 23:30:56 +03:00
Denis Pauk a9d6939297 gl: use lower MSAA value on error 2021-10-15 23:30:56 +03:00
Denis Pauk 0bbd65ebac gl1: Scale 8bit images with retexturing=2 2021-10-15 23:30:56 +03:00
Denis Pauk 58af4c84ff gl3: Scale 8bit images with retexturing=2 2021-10-15 23:30:56 +03:00
BjossiAlfreds 59f0462cc1 Fixed updated gunangles and gunoffset not always being sent to client 2021-10-14 02:06:52 +00:00
Yamagi 4b29329758
Merge pull request #748 from devnexen/sw_gl1_inleaf_sig_fix
sw/gl1 client Mod_PointInLeaf sig mismatch.
2021-10-13 17:30:35 +02:00
Yamagi 3f32958493
Merge pull request #750 from smcv/arm-softfloat
backends: Only enable ARM "RunFast" mode when targeting hardware FPU
2021-10-13 17:29:59 +02:00
David Carlier 6cb2981c9c sw/gl1 client Mod_PointInLeaf sig mismatch. 2021-10-08 21:38:34 +01:00
Simon McVittie d17c00dbd2 backends: Only enable ARM "RunFast" mode when targeting hardware FPU
Older ARM ABIs like Debian armel (ARMv5 EABI softfloat) don't use
or require a hardware FPU, so they can't execute the fmrx and fmxr
instructions. Only do this in hardfloat configurations that guarantee
VFP instructions are available.

The client might not be practically usable on ARM softfloat (although
nobody has reported that it isn't...) but the dedicated server is probably
fine, and ceasing to be able to build either would be a regression.

Signed-off-by: Simon McVittie <smcv@debian.org>
2021-10-05 14:05:15 +01:00
Yamagi c41e9413bb Move `g_machinegun_norecoil` to the appropriate section. 2021-09-28 18:40:07 +02:00
Yamagi f4f61c1f27 Add `g_machinegun_norecoil` to the list of cheat proteced cvars. 2021-09-28 18:37:56 +02:00
Yamagi bd90450ba7
Merge pull request #747 from De-Seppe/master
Feature request : add cvar to disable machine gun recoil in single player #741 (baseq2)
2021-09-28 18:36:20 +02:00
De-Seppe b471578c3e Rename variable to conform to naming guidelines
Change the name of the cvar machinegun_norecoil to g_machinegun_norecoil to conform to the naming guidelines
2021-09-27 18:29:37 +02:00
De-Seppe c1e0372366 Add new cvar to the documentation 2021-09-27 13:06:58 +02:00
De-Seppe ed1d1bc0c6 Merge branch 'master' of https://github.com/De-Seppe/yquake2 2021-09-27 12:57:55 +02:00
De-Seppe 41a134a195 Add cvar machinegun_norecoil
Add cvar machinegun_norecoil
This cvar allows to disable machinegun recoil in single player.
The default value is the original Quake 2 behaviour.
2021-09-27 12:56:22 +02:00
Yamagi 8d2a3f84ce
Merge pull request #746 from devnexen/doc_bsd_update
installatio doc update proposal, regarding BSD and Solaris
2021-09-27 11:27:03 +02:00