Denis Pauk
4ebe9a74c0
vk: single call render NullModel
2024-08-04 19:14:47 +03:00
Denis Pauk
409b5bcd20
vk: reuse index buffer for model shadow
2024-08-04 16:37:46 +03:00
Denis Pauk
7ab6341e5b
vk: remove drawInfo usage in vk_mesh
2024-08-04 16:02:25 +03:00
Denis Pauk
138a51c476
vk: single call for all shadow mesh in alias model
2024-08-04 15:19:24 +03:00
Denis Pauk
a7dc338e5c
vk: single call for all meshes in alias model
2024-08-04 13:35:13 +03:00
Denis Pauk
c43f8f1ce3
vk: use single index buffer for alias mesh
2024-08-04 00:48:54 +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
protocultor
f41cc545c6
Merge branch 'yquake2:master' into ref_gles1
2024-08-03 10:15:04 -04:00
Denis Pauk
cd16e9884d
vk: rework fan index buffer cache
2024-08-03 13:48:56 +03:00
Denis Pauk
d9a240a935
vk: pregenerate index buffer in Vk_DrawAlias
2024-08-03 00:19:46 +03:00
Denis Pauk
06167fc711
vk: share buffers and pipeline select for whole mesh
...
Move gen Strip/Fan index to separate functions.
2024-08-02 13:52:39 +03:00
BjossiAlfreds
d11ba119bc
CTRL+x and c for cut/copy to clipboard
2024-08-02 00:42:40 +00:00
BjossiAlfreds
ced8be673e
CTRL+letter actions in console + cursor can be inside edit line
2024-08-01 22:04:25 +00:00
BjossiAlfreds
29eb6a601f
Q_strdel and Q_strins utility functions
2024-07-31 21:40:11 +00:00
Denis Pauk
a0745ba023
Use SURF_TRANSPARENT instead SURF_TRANS33 | SURF_TRANS66
2024-07-31 22:48:53 +03:00
Denis Pauk
ea7f219832
Merge remote-tracking branch 'yquake2/master'
2024-07-31 22:42:18 +03:00
Yamagi
3aa051c6d2
Merge pull request #1133 from protocultor/lightmapchain_fix
...
Infinite loop in R_GetBrushesLighting() function, hangs the game
2024-07-31 20:22:57 +02:00
Jaime Moreira
1df86ae16d
lightmapchain cleared of surfaces added twice
2024-07-31 12:13:32 -04:00
Denis Pauk
8b6ae7cc89
vk: share ubo in Vk_DrawAlias
2024-07-31 18:12:10 +03:00
Denis Pauk
1b62173355
pcx: show developer warning for uncommon pcx files
2024-07-31 11:16:36 +03:00
Denis Pauk
7ee871dc76
cin: add lmp image format support
2024-07-31 00:12:53 +03:00
Denis Pauk
f1d8387d81
rename s|bitesPerPixel|bitsPerPixel|g
2024-07-30 08:49:58 +03:00
Denis Pauk
40e4eb135a
Quake 2 8.41RR8
...
- Fix platforms in q64/outpost,
- Add MDR model format support,
- Sync with classic yquake 2 repository,
- Full support pcx version 5 format,
- Rework image load code.
2024-07-29 23:02:06 +03:00
Denis Pauk
6247cf2692
collision: load ent file without has as backward compatibility
...
https://github.com/yquake2/yquake2/pull/1130#issuecomment-2256461447
2024-07-29 22:56:44 +03:00
Yamagi
c72d0c1b39
Add back linker options somehow lost in 8cedbb0
.
...
Closes #1129 , fixed by @ArminiusTux.
2024-07-29 19:18:48 +02:00
Denis Pauk
e754261f22
ReadMe: add more SDK links
2024-07-29 15:07:57 +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
26f578212a
Deleted unused variable in R_RegenAllLightmaps()
...
Static arrays there have their dimensions swapped, they make more sense now.
Added important detail in gl1_lightmapcopies doc.
Also added doc for gl_polyblend, just because of its "popularity".
2024-07-28 12:14:17 -04:00
Jaime Moreira
b72c465214
GLES1 renderer: lightmap copies
...
Available in both GL1 and GLES1. Keep multiple copies of "the same"
lightmap on video memory; they are actually different, because they're
used in different frames. This is a workaround for the usage of
glTexSubImage2D() for dynamic lighting, since modifying textures used
recently causes slowdown in embedded/mobile devices.
Controlled by gl1_lightmapcopies cvar; default in GL1 is `0`, while
in GLES1 is `1`.
2024-07-27 23:22:41 -04:00
Jaime Moreira
0596d23e4c
GLES1 renderer: discard framebuffer
...
Available only on GLES1, allows to use a "performance hint" to the
GPU to discard the contents of depth and stencil buffers after each
frame. Some hardware might want to reuse them, but Quake 2 doesn't
work that way.
Controlled by gl1_discardfb cvar, default `1`.
2024-07-27 23:18:06 -04: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
Jaime Moreira
94c4bf2df7
GL1 unified draw calls, 7
...
Changed "buffer" functions (vertex, single/mtex, color) to macros.
Macros eliminate the function call overhead, resulting in faster
execution times. Depending of the hardware, there might be a
performance increase of almost 10%.
This forced the buffer to be exposed as global.
Not worth doing this for 2D elements though.
2024-07-27 23:08:46 -04:00
Jaime Moreira
826f4816f6
There's no such thing as "gl1_colorlight"
...
"Invented" in 575ea06b9
, only existed in video menu.
Resurrect this when it actually works.
2024-07-27 23:05:59 -04:00
Denis Pauk
30a2045189
Merge remote-tracking branch 'yquake2/master'
2024-07-27 18:52:15 +03:00
Yamagi
4b3545697e
Bump version number to 8.41pre.
2024-07-27 09:41:02 +02:00
Yamagi
4e41dbf186
Bump version to 8.40.
2024-07-27 09:40:00 +02:00
Denis Pauk
7551b683de
Fix platforms in q64/outpost
...
Fix regression from 30fa1d6b83
Issue comes from Rogue code merge.
2024-07-24 12:53:13 +03:00
David Carlier
ae827dbd86
client sound fade_data is only really used later.
2024-07-22 21:44:06 +01:00
Denis Pauk
6c16fe1e8e
Merge remote-tracking branch 'yquake2/master'
2024-07-21 18:07:00 +03:00
Yamagi
528ffe6a6d
Add missing R_ApplyGLBuffer()
to actually render the player menu.
...
This fixes part of the player setup menu missing after the GL1 grouped
drawcalls branch was merged.
Submitted by @protocultor in
https://github.com/yquake2/yquake2/pull/1124#issuecomment-2241272507
2024-07-21 09:24:49 +02:00
Denis Pauk
7258f240ce
Merge commit 'df81a8b7'
2024-07-21 00:23:27 +03:00
Yamagi
824cd9c034
Update CHANGELOG for 'Group draw call in GL1.'
2024-07-20 09:35:14 +02:00
Yamagi
85ca97192d
Merge pull request #1125 from apartfromtime/menu-stack
...
Menu: minor code refactor
2024-07-20 09:31:54 +02:00
Yamagi
eef7db91d8
Merge pull request #1124 from protocultor/gl1_buffer
...
Grouped draw calls for improved performance with GL1
2024-07-20 09:24:23 +02:00
apartfromtime
df81a8b7b8
menu: active menu layer
...
Replace function pointers with active menu layer.
2024-07-20 11:57:21 +10:00
apartfromtime
2bafa22cfc
menu: menu framework function pointers
...
Add function pointers draw and key event to menu framework.
Setup function pointers for menu frames.
Pass menu framework as parameter to M_PushMenu().
2024-07-20 10:21:22 +10:00
Denis Pauk
ed286f39e5
images: pcx pcx_width could be smaller that bytes_by_line
...
Some tools could round up bytes_by_line from pcx_width.
Just ignore such cases.
2024-07-16 23:50:41 +03:00
Denis Pauk
1e0aa094cb
Merge remote-tracking branch 'yquake2/master'
2024-07-15 23:37:05 +03:00
Yamagi
4b9b8e14a4
Switch g_quick_weap to 1 by default.
...
It's a nice to have convenience feature that most players will never
notice. Die hard traditionalists can switch it off.
2024-07-15 21:42:15 +02:00
Yamagi
2d581a3667
Fix description of g_quick_weap and fix typo, it's SDL 3.1.2.
2024-07-15 21:38:26 +02:00