Commit Graph

458 Commits

Author SHA1 Message Date
Denis Pauk 1f0e67621c game: Add remaster translation support 2024-09-14 20:59:50 +03:00
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