Daniel Gibson
e124ddb4d0
GLES3 support in CMake
2022-04-27 00:33:46 +02:00
Daniel Gibson
2a8bd9e7a6
GL3: build ref_gles3 in addition to ref_gl3
...
instead of making it a compile-time option, just build both
2022-04-27 00:33:46 +02:00
Daniel Gibson
a195305592
GL3: Fix particles on RPi4
...
tested V3D 4.2; OpenGL ES 3.1 Mesa 20.3.5
2022-04-26 04:10:57 +02:00
Daniel Gibson
89f63915a3
GLES3: Make newer shaders work with OpenGL ES
2022-04-26 04:09:38 +02:00
Daniel Gibson
c936e43420
GL3: Use one projection-view matrix in shaders
...
instead of separate projection and view matrices - this way there is
one less mat4 multiplication in the 3D vertex shaders.
2022-04-26 04:09:38 +02:00
Daniel Gibson
1eabde6b55
GL3: Make GLES3 work on Raspberry Pi 4B
...
(older Raspberry Pi versions don't support OpenGL ES 3.0, only 2.0)
2022-04-26 04:09:38 +02:00
Daniel Gibson
8737ce64fc
GL3: Support OpenGL ES3.0 (compile time option GL3_GLES=yes)
...
the option defaults to no, of course.
2022-04-26 04:09:38 +02:00
Daniel Gibson
c6145b4e6a
GL3: Only use FBO if under water
...
because on some systems (like RPi4 with my experimental GLES3 branch)
the overhead of a FBO is really noticeable, so no reason to pay for it
when it's not needed
2022-04-26 04:08:21 +02:00
Daniel Gibson
3d619a1441
GL3: Implement underwater postprocess effect using framebuffer object
...
Can be disabled with gl3_usefbo 0.
Mostly this adds an underwater warping effect, like the soft-renderer,
and also like the vulkan renderer (the shader is based on the vk one).
When this is enabled, the v_blend effect (for fullscreen overlay with
one color, like when hit or to make the screen white-ish when under
water) is now applied in the shader used for rendering the FBO instead
of rendering a fullscreen quad in blendmode.
2022-04-25 17:44:51 +02:00
Yamagi
4db6534ab3
Implement damage tracking for the framecounter.
...
This fixes the framecounter in the soft renderer when `viewsize` is set
to something smaller than 100. This requires the renerer to rerender
bigger parts of the borders which has a measurable speed impact. About
5 frames less with the framecounter enabled on my system. No impact with
`viewsize 100`.
2022-04-24 00:17:48 +02:00
Yamagi
be3e0cc695
Fix viewsize
not working correctly with the GL renderers.
...
The GL renderers require that the borders are redrawn after every
glClear() call, the damage tracking doesn't take that into account.
Since the speedup by the damage tracking is neglibiable in the GL
renderers, don't use it. Just redraw everything when we're running
with everthing which isn't the soft renderer.
2022-04-24 00:01:14 +02:00
Yamagi
a9a0c35a98
Rename the nightmare menu entry to hard+.
...
I think this looks ugly, I always called it nightmare and it was one of
the first changes I've made to Quake II. But for the sake of peace and
quiet change it to be standard conformant. Closes #809 .
2022-04-23 16:35:27 +02:00
Yamagi
aa5d6636d6
Merge pull request #814 from protocultor/gamecontrollerdb
...
Load gamecontrollerdb.txt for SDL2 joy mappings
2022-04-23 16:21:09 +02:00
Yamagi
60b5ec3268
Merge pull request #812 from 0lvin/fixes
...
Fixes for soft render with disabled color lighting
2022-04-23 16:11:34 +02:00
Denis Pauk
b2500d6aed
soft: revert to use colormap
...
Apply light uses colormap for each color components with colorlights.
2022-04-17 23:25:22 +03:00
Denis Pauk
afc892001d
soft: move light code to separate function
2022-04-17 23:07:38 +03:00
Denis Pauk
a58fb0ed01
soft: fix colors
2022-04-17 23:07:38 +03:00
Denis Pauk
96a78c41c8
soft: speedup apply grey light to wall
2022-04-17 23:07:38 +03:00
Denis Pauk
e1d5bad4db
soft: fix grey light with fix c20c47b0
2022-04-17 23:07:38 +03:00
Jaime Moreira
45d8228dff
Corrected silly string concatenation
2022-04-16 11:53:22 -04:00
Jaime Moreira
db0e643419
Load gamecontrollerdb.txt for SDL2 joy mappings
2022-04-16 01:37:15 -04:00
Yamagi
6e45f5a66b
Merge pull request #810 from protocultor/prefweap
...
Added prefweap command to select weapon by priority
2022-04-13 11:51:33 +02:00
Yamagi
c9a5bc5d03
Merge pull request #811 from protocultor/sdlbackbutton
...
Added cvar to define SDL gamepad's 'Back' button
2022-04-11 09:26:07 +02:00
Jaime Moreira
fadb281ec9
Added cvar to define SDL gamepad's 'Back' button
2022-04-06 22:15:14 -04:00
Jaime Moreira
f80e5224bb
Added prefweap command to select weapon by priority
2022-04-06 15:28:34 -04:00
Yamagi
9d451faca5
Merge pull request #808 from devnexen/sw_useq
...
S/W last instance of strncpy usage.
2022-04-03 17:46:58 +02:00
Yamagi
8fa5ea3599
Merge pull request #807 from devnexen/config_settings_haiku
...
saving data into Haiku system user config.
2022-04-03 17:44:06 +02:00
Yamagi
d827636c73
Merge pull request #804 from 0lvin/softcolorlight
...
WIP: Add color light to soft render
2022-04-03 17:43:38 +02:00
David Carlier
2425082a04
S/W last instance of strncpy usage.
2022-04-03 14:58:04 +01:00
David Carlier
7ce0964b9b
saving data into Haiku system user config.
2022-04-02 04:22:55 +00:00
Denis Pauk
ccb22843bf
soft: use float for medium light
2022-03-29 22:29:28 +03:00
Denis Pauk
e650eff100
soft: preshift values in lightmap
2022-03-29 22:29:28 +03:00
Denis Pauk
020ce27109
soft: speedup colorlight=0
...
colorlight>0 is regressed little bit.
2022-03-29 22:29:28 +03:00
Denis Pauk
a0da1717cc
soft: use max light in blocklights (colorlight=0)
2022-03-29 22:29:28 +03:00
Denis Pauk
3b825670ba
soft: fix lightmap mask
2022-03-29 22:29:28 +03:00
Denis Pauk
c20c47b06f
soft: skip light apply on wall's
2022-03-29 22:29:28 +03:00
Denis Pauk
ff1814922e
soft: use vid_lightthreshold for skip apply light
2022-03-29 22:29:28 +03:00
Denis Pauk
c73eac63b3
soft: rename r_colorlight -> sw_colorlight
2022-03-29 22:29:28 +03:00
Denis Pauk
b5d45d0371
soft: use lightmap convert table
2022-03-29 22:29:28 +03:00
Denis Pauk
6af5dc1d98
soft: more use of light3_t
2022-03-29 22:29:28 +03:00
Denis Pauk
5eed0ca5d9
soft: reuse R_Alias_clip_scale
2022-03-29 22:29:28 +03:00
Denis Pauk
5fcf0a3afc
soft: resuse compact vert_t
2022-03-29 22:29:28 +03:00
Denis Pauk
3f33522977
soft: use separate light3_t
2022-03-29 22:29:28 +03:00
Denis Pauk
480f278045
soft: directly copy r_ambientlight
2022-03-29 22:29:28 +03:00
Denis Pauk
6c80d9b987
soft: add full color light
2022-03-29 22:29:28 +03:00
Denis Pauk
a6839bc584
soft: add fullcolor light apply
2022-03-29 22:29:28 +03:00
Denis Pauk
15553b9971
soft: use plightvec directly
2022-03-29 22:29:28 +03:00
Denis Pauk
36542e737c
soft: make pointcolor local
2022-03-29 22:29:28 +03:00
Denis Pauk
12b27e631d
fix C --pedantic warnings
...
* extra semicolon in struct or union specified
* ISO C does not allow extra ‘;’ outside of a function
2022-03-29 22:29:28 +03:00
Denis Pauk
65f8c171c5
soft: use named struct vert_t instead array
2022-03-29 22:29:28 +03:00