Commit graph

457 commits

Author SHA1 Message Date
Denis Pauk
247acb32fd Merge remote-tracking branch 'yquake2/master' 2024-08-12 18:46:04 +03:00
Yamagi
53b738f77b
Merge pull request #1128 from protocultor/ref_gles1
OpenGL ES 1.0 renderer
2024-08-12 09:02:40 +02:00
Denis Pauk
c0fe05fc03 Merge remote-tracking branch 'yquake2/master' 2024-08-12 00:05:34 +03:00
Denis Pauk
f688ea599f cin: support 24bit pcx images 2024-08-11 15:40:33 +03:00
Jaime Moreira
bbdaadb104 Removed link to desktop OpenGL library for gles1
Done for all platforms, CMakeLists included. Unneeded with glad.
Renderer fallback logic now includes gles1, just before soft:
custom -> gl3 -> gles3 -> gl1 -> gles1 -> soft.
2024-08-03 12:39:23 -04:00
Denis Pauk
1b62173355 pcx: show developer warning for uncommon pcx files 2024-07-31 11:16:36 +03:00
Denis Pauk
0a774a4f75 models: add support of MDR
* https://github.com/ioquake/ioq3/blob/main/md4-readme.txt
* https://github.com/UberGames/MD3View
2024-07-29 13:31:12 +03:00
Jaime Moreira
03227f1ed6 OpenGL ES 1.0 refresher (GLES1 for friends)
Variant of GL1, meant for embedded/mobile devices only.
Build it with "make with_gles1".
For Windows, you'll need MSYS2 and a decent ANGLE implementation
(probably not worth the trouble).
Building with CMake only works in Linux, so it has been commented out.
2024-07-27 23:15:12 -04:00
Denis Pauk
6c16fe1e8e Merge remote-tracking branch 'yquake2/master' 2024-07-21 18:07:00 +03:00
Jaime Moreira
50aebd2de4 GL1 unified draw calls, init
Implemented a batching procedure, to try to group meshes in a buffer
and use a final GL call to draw them all in one step, instead of the
many GL draw calls existing today.
For now, only 2D textures are included, especifically console text
("conchars"), scrap and tiles. It's not worth doing this for
individual 2D elements (e.g. crosshair).
2024-07-15 06:56:02 -04:00
Denis Pauk
829b1a014e renders: simplify swl/pcx load code 2024-07-11 23:34:45 +03:00
Denis Pauk
330b1352fb Add macos test build on release tag 2024-06-22 17:35:25 +03:00
Denis Pauk
9f84e40ab7 cin: move image load to separate file 2024-06-22 12:09:35 +03:00
Henk
8b853dd27a
Update Makefile to build ref_vk.dylib on Apple Silicon
- Some markdownlinting / nitpicking on README.md
2024-06-21 14:02:52 +02:00
Denis Pauk
6dfcbf1429 Merge remote-tracking branch 'yquake2/master' 2024-06-18 00:17:16 +03:00
Henk
473b2ca078
Update Makefile to build on Apple Silicon 2024-06-14 17:26:24 +02:00
Denis Pauk
1b73b4ea5b maps: move IBSP to QBSP code to separate file 2024-05-05 12:36:14 +03:00
Denis Pauk
98cc9c1ea0 models: move Mod_LoadFile to client side 2024-05-01 11:00:33 +03:00
Denis Pauk
eb344a030e renders: Move scroll logic to R_FlowingScroll 2024-04-22 00:04:21 +03:00
Denis Pauk
02b8e85c01 opengl renders: support of gl_version_override cvar
Provides way to check render with lower officialy
reported OpenGL version.

Same as:
* MESA_GL_VERSION_OVERRIDE=4.6
* MESA_GLSL_VERSION_OVERRIDE=460
2024-04-13 13:25:34 +03:00
Denis Pauk
4bd19bf982 Merge remote-tracking branch 'yquake2/master' 2024-04-07 18:12:09 +03:00
Yamagi
8d04ed0bbf Mention SDL 3 as alternative to SDL 2. 2024-04-07 11:01:45 +02:00
Yamagi
8cedbb0694 Port the Windows platform backend including Makefile support to SDL3.
This also fixes a long standing bug with the Windows part of the
Makefile linking -lSDL2 into q2ded.exe.
2024-04-07 11:01:45 +02:00
Yamagi
9b0c95daaa Fork the clients SDL 2 backends into SDL 3 versions.
At this time they are just copies. The actual porting will be done in
upcoming commits.
2024-04-07 11:01:44 +02:00
Yamagi
126c2ea10b Add SDL 3 support to the Makefile.
This is hidden behind WITH_SDL3, which is disabled by default.

Additionally rename the SDL sources files in the client to represent the
SDL major version they are supporting. They will be forked for SDL 3.
That isn't optimal, because it forces us to support two variants of the
same code. However the changes between SDL 2 and 3 are too big to work
with #ifdef and something like function pointer magic is even more
confusing.
2024-04-07 11:01:44 +02:00
Denis Pauk
f5bbf533bc protocol: share configstring convert logic 2024-03-23 18:47:17 +02:00
Denis Pauk
51407d7139 small build clean up 2024-03-21 23:28:43 +02:00
Denis Pauk
47bacf9a52 game: Add support some of quake 1 monsters
Shambler is left without chenges and fixes for now.
2024-02-11 19:10:57 +02:00
Denis Pauk
8d0261c6a0 models: add md5 support
Has:
 * no hacks for replace md2 with md5 automatically(TODO),
 * no logic for merge anim and mesh content as required by loader(TODO),
 * automaticlly converted md5 to md2 like internal format.

Part of https://github.com/yquake2/yquake2remaster/issues/4

Based on:
 * http://tfc.duke.free.fr/coding/md5-specs-en.html
 * https://github.com/Shpoike/Quakespasm/blob/qsrebase/Quake/gl_model.c (Normals code)

Also looked to:
 * https://github.com/Novum/vkQuake/blob/master/Quake/gl_model.c#L4181
 * https://github.com/fte-team/fteqw/blob/master/engine/common/com_mesh.c
 * 1b42134e11
2024-01-28 12:28:17 +02:00
Denis Pauk
9b3b4b44df Merge remote-tracking branch 'yquake2/master' 2024-01-07 14:51:26 +02:00
Jaime Moreira
9f9c212648 OpenGL 1 errors are visible now
Needs DEBUG=1 to enable
2024-01-06 13:29:13 -03:00
Denis Pauk
083ea68a80 refresh: split models file to maps.c 2023-12-27 23:15:35 +02:00
Denis Pauk
985fa68b97 cinema: smaker video support if fully covered by avcodec 2023-12-27 17:50:25 +02:00
Denis Pauk
2a8e84ccd8 gl1,gl3,gl4,vk: sync R_LerpVerts 2023-12-26 14:14:31 +02:00
Denis Pauk
6b4f197ac0 game: Add third person view
Based on codes:
 * Lazarus mod
 * KMQuake2 codes
 * Slight Mechanical Destruction mod

https://bitbucket.org/Knightmare66/kmquake2_stable/src/master/game/p_chase.c
2023-12-25 00:05:38 +02:00
Denis Pauk
d48a8abf5c Merge remote-tracking branch 'yquake2/master' 2023-11-25 16:14:28 +02:00
Yamagi
4967b9d0ca Update miniz to e5700656b34b732f8d4e5df87cb0de00a6c8f319. 2023-11-24 09:26:14 +01:00
Yamagi
90402c3f85 Move miniz into a subdirectory.
An upcoming update will add several files, having miniz in it's own
subdirectory makes it clear what belongs to it an whit to unzip.
2023-11-23 18:21:44 +01:00
Denis Pauk
38f2442d84 soft: move RE_SetSky to warp file
Same structure as other renders have
2023-11-18 17:52:43 +02:00
Denis Pauk
9958db18d6 game: Add ReRelease Shambler Monster 2023-11-17 00:45:58 +02:00
Denis Pauk
1151c91069 game: Add ReRelease Guardian Monster 2023-11-12 23:51:58 +02:00
Denis Pauk
6aece83adb game: restore rerelease target_actor used in biggun 2023-11-09 00:56:33 +02:00
Denis Pauk
081d0fffa4 game: add ReRelease Arachnoid monster 2023-11-09 00:15:23 +02:00
Denis Pauk
172e8b743e game: merge ctf 2023-11-04 21:03:05 +02:00
Denis Pauk
f0155f0163 game: sync ctf g_ai 2023-11-04 20:22:01 +02:00
Denis Pauk
d27fc1f333 game: sync ctf player 2023-11-04 18:30:46 +02:00
Denis Pauk
802a874f64 game: sync ctf g_cmds 2023-11-04 17:32:56 +02:00
Denis Pauk
2b69f3774f game: sync ctf hud/trail 2023-11-04 17:01:06 +02:00
Denis Pauk
16dee61c78 game: sync ctf g_{spawn,phys} 2023-11-03 01:00:51 +02:00
Denis Pauk
9947744114 game: sync ctf g_{chase,func,items,misc,weapon} 2023-11-03 00:36:57 +02:00