Commit graph

4349 commits

Author SHA1 Message Date
Denis Pauk
ec8b792a4b renders: use three bytes for save model normal 2024-06-04 23:47:48 +03:00
Jaime Moreira
c4271848df gl1_multitexture doc update 2024-06-04 16:21:10 -04:00
Jaime Moreira
24b03b61f8 Gyro tightening
A practical way to avoid a noisy gyro signal, or shaky hands.
Unlike a deadzone, inputs below the threshold are "squeezed towards
zero", so they are not completely ignored. Source:
http://gyrowiki.jibbsmart.com/blog:good-gyro-controls-part-1:the-gyro-is-a-mouse#toc9
2024-06-04 15:48:42 -04:00
Jaime Moreira
0e63bad7d9 Sliders and gamepad buttons refactor
Same logic with less code.
2024-06-04 15:18:37 -04:00
Jaime Moreira
d2b0ebd522 Correct OpenGL boolean flags. 2024-06-04 15:10:41 -04:00
Jaime Moreira
6869d7dddd GL1 multitexture combine removed
Applied too many OpenGL calls for an effect that could not be told
apart from normal GL_MODULATE; explains its absence from Q3A code.
Also, removed calls to glPixelStorei when no dynamic lights present.
2024-06-04 14:59:05 -04:00
Jaime Moreira
c68ffec274 GL1 multitexture bugfix
With "hand 2" and no "alias" models in player sight, sometimes only
lightmap was visible. Now forcing disabled multitexture when needed.
Another bugfix: "gl_showbbox 1" no longer produces OpenGL errors.
2024-06-04 14:53:25 -04:00
Denis Pauk
88bb466f1e renders: use dot product of shadevector and normal directly 2024-06-04 20:01:23 +03:00
Denis Pauk
a9219192e0 menu: show player weapon model in preview 2024-06-01 16:18:42 +03:00
Denis Pauk
acea97c16f menu: fix cppcheck warnings 2024-06-01 13:47:58 +03:00
Denis Pauk
36242bd254 menu: extend player model and skin name to MAX_QPATH 2024-06-01 13:00:11 +03:00
starfrost013
e160691fec Fix potential memory corruption issue where cl_numparticles is 0 and CL_ClearParticles is called. 2024-05-29 15:41:12 +01:00
Denis Pauk
7f47af1371 Version bump 2024-05-28 22:36:48 +03:00
Denis Pauk
faf86b72c5 GL1 big lightmaps and scrap
https://github.com/yquake2/yquake2/pull/1108

Merge remote-tracking branch 'yquake2/master'
2024-05-27 08:41:53 +03:00
Yamagi
7ffcd990c4
Merge pull request #1108 from protocultor/gl1_biglightmaps
GL1 big lightmaps and scrap
2024-05-25 16:03:38 +02:00
Denis Pauk
e00ab4ffde game: fix save of quake monsters 2024-05-15 00:43:42 +03:00
Denis Pauk
5709e2c746 game: quake1 monsters, use defines instead frame number 2024-05-12 13:43:27 +03:00
Denis Pauk
75b05838a1 game: use defines for DOOR_ANIMATED and DOOR_ANIMATED_FAST
Based on:
 * https://github.com/id-Software/quake2-rerelease-dll/blob/main/rerelease/g_func.cpp
2024-05-12 13:27:06 +03:00
Denis Pauk
d08500643d maps: provide in and our lump position to convert lump function
Replace some of convert function to byte copy and long copy.
2024-05-12 13:27:06 +03:00
Denis Pauk
33a3aed03e GL1 multitexture
Merge changes from https://github.com/yquake2/yquake2/pull/1103
Merge remote-tracking branch 'yquake2/master'
2024-05-12 12:55:53 +03:00
Denis Pauk
1eb55aa3de renders: lightmap generation, trust caller about size of provided buffer 2024-05-12 12:04:46 +03:00
Jaime Moreira
0f307cc9c1 GL1 scrap/atlas configurable size
Controlled by gl1_biglightmaps cvar, works like new lightmaps.
Max size is 384x384; a bigger size is not justified.
Added a transparent border so colors from one picture don't bleed
into the next.
2024-05-11 18:20:13 -04:00
Jaime Moreira
81fd2c1027 Increased lightmap size in GL1
Controlled by new cvar, gl1_biglightmaps.
Size is now up to 512x512, for a max quantity of 8 lightmaps.
Should reduce rebinding of them, and reduce the number of calls
to glTexSubImage2D(), although it may increase data transfer on
each call.
2024-05-11 18:18:28 -04:00
Jaime Moreira
a8824972db Fixed potential game crash at shutdown
Only happens in Windows. A cvar was being queried just after
all cvars were freed, in Qcommon_Shutdown().
GL_GENERATE_MIPMAP definition relocated.
scrap_uploads counter deleted, it wasn't being read anywhere.
2024-05-11 18:16:38 -04:00
Denis Pauk
d3239738e9 Merge commit '3faa3db1'
Partial merge of https://github.com/yquake2/yquake2/pull/1103
2024-05-12 00:17:49 +03:00
Yamagi
b401846ce6
Merge pull request #1103 from protocultor/gl1_multitexture
GL1 multitexture
2024-05-11 16:28:39 +02:00
Denis Pauk
44afb2e91b maps: support IDBSP format without ident 2024-05-09 23:42:27 +03:00
Denis Pauk
cfd1e5f346 renders: fix parse of SiN def format
Some of files could have name of animation and skin, but some of files
does no have naming of action and textures. Search include file by extention
instead use name + filename format.
2024-05-08 01:42:35 +03:00
Denis Pauk
eff91e34c0 renders: check for SiN format in player models 2024-05-08 01:42:21 +03:00
Denis Pauk
9145c0a923 renders: additional validation cleanups for SiN 2024-05-08 01:41:46 +03:00
Denis Pauk
13e1df2bda renders: inital support of SiN def/sbm/sam load
Added only file format support without model overwrite.

Based on https://web.archive.org/web/20001212060900/http://starbase.neosoft.com:80/~otaku/program.html
2024-05-08 01:41:14 +03:00
Denis Pauk
e463721665 maps: Use LUMP defines instead numbers in rules 2024-05-05 15:55:23 +03:00
Denis Pauk
1b73b4ea5b maps: move IBSP to QBSP code to separate file 2024-05-05 12:36:14 +03:00
Denis Pauk
dbc7a5fbe5 maps: prepare code for use formats with different position of lumps 2024-05-05 12:23:06 +03:00
Denis Pauk
fbc91514eb Merge remote-tracking branch 'yquake2/master' 2024-05-05 12:00:43 +03:00
Yamagi
d50408ff0b Bump SDL 3 support to the latest preview, SDL 3.1.2.
SDL 3.1.1 -> 3.1.2 brings another round of API changes. Only one of them
is relevant for us: the SDL_RENDERER_ACCELERATED flag was removed.
2024-05-05 09:37:36 +02:00
Denis Pauk
fb85150702 maps: move entity add null terminate to sv_init 2024-05-04 17:18:48 +03:00
Denis Pauk
7e53c83c88 maps: fix lump size calculation 2024-05-04 15:39:01 +03:00
Denis Pauk
f1d9bd6f47 game: port TRAIN_FIX_OFFSET and TRAIN_USE_ORIGIN from ReRelease
Fix platforms in `train` level.
2024-05-02 23:42:05 +03:00
Denis Pauk
ded6f0c962 game: change level hack
Look like ReRelease code just ignore spawn target if target has not found.

`base2` has `eou1_.cin+*bunk1$start` as target but `bunk1` does not have such target.

Look to:
* 8dc1fc9794/rerelease/p_client.cpp (L1492)
* https://github.com/yquake2/yquake2remaster/issues/22
2024-05-02 00:25:38 +03:00
Denis Pauk
78c7f62aba CMod_LoadAreaPortals: reuse cache as map_areaportals 2024-05-01 19:07:42 +03:00
Denis Pauk
bf81d4e427 maps: cache QBSP in collision map list 2024-05-01 14:23:49 +03:00
Denis Pauk
98cc9c1ea0 models: move Mod_LoadFile to client side 2024-05-01 11:00:33 +03:00
Trey Harrison
bbcc0ed222 renders: add SAM/SBM/DEF model files definitions
Author: Trey Harrison <trey@u.washington.edu>
Based on: https://web.archive.org/web/20001212060900/http://starbase.neosoft.com:80/~otaku/program.html
2024-04-30 00:23:56 +03:00
Denis Pauk
9abc88e6ab gl4: support multimesh models 2024-04-30 00:13:48 +03:00
Jaime Moreira
b81e910929 GL1 multitexture, refactored memory allocation
It was missing error checking and cleanup at shutdown.
Also, reset state when needed. Fixes "death by laser" in boss1 map.
2024-04-29 14:39:48 -04:00
Denis Pauk
19f6e5df62 Version bump 8.31RR7
* Rework map load logic,
 * Support SiN map load,
 * Support track names,
 * Support N64 flags,
 * SDL3 build support (by Yamagi),
 * Fixes for sort render (by dkoreshkov),
 * Added cvar cl_laseralpha (by BjossiAlfreds),
 * VectorLength reduces complexity (by devnexen),
 * Sync with latest yquake 2 code.
2024-04-27 00:22:00 +03:00
Denis Pauk
dfb1818aa9 Readme update 2024-04-25 00:09:23 +03:00
Denis Pauk
42b4a61794 renders: support SURF_N64_UV 2024-04-24 23:54:52 +03:00
Denis Pauk
f7ec7d268e server: use game api version for protocol detect 2024-04-24 00:55:53 +03:00