Christoph Oelckers
4daa256e2f
- fixed: RecreateAllAttachedLights must activate the lights it creates.
...
This also removes the gl_attachedlights CVAR because with the new management this doesn't really work anymore.
# Conflicts:
# src/gl/system/gl_cvars.h
# wadsrc/static/menudef.txt
2019-04-27 13:20:44 +02:00
Christoph Oelckers
34e003f7cd
- regenerated gl_load with full OpenGL 4.5 declarations, mostly to get the direct state access functions.
2018-11-21 20:18:45 +01:00
drfrag666
557380a769
- Added alpha parameter to DrawLine for the GL renderer, it's a fake parameter for the software renderer so mods don't crash.
2018-11-02 13:04:37 +01:00
drfrag666
2183f71ec6
- Make 160x100 scaling actually work, not that it's really useful.
...
This partially reverts "- don't let the video scale let the screen end up with a client size less than 320x200, which may cause undefined behavior and trigger asserts in debug builds."
2018-10-15 11:58:09 +02:00
Christoph Oelckers
01109897b0
- replaced gl_PatchMenu with an MMX 'ifoption' check.
...
# Conflicts:
# src/gl/system/gl_framebuffer.cpp
2018-08-10 20:47:06 +02:00
Christoph Oelckers
a7a350d37e
- always retrieve uniform buffer properties.
...
They are sometimes needed even if shader storage buffers are available.
# Conflicts:
# src/gl_load/gl_interface.cpp
2018-07-29 22:34:11 +02:00
Christoph Oelckers
425d756f04
- do not use SSBOs for dynamic lights on Intel graphics hardware for performance reasons.
...
This was already disabled for GL 4.4 and lower but also needs to be done for Intel's GL 4.5 drivers.
Unlike before this is now exclusive to the light buffer, the shadowmap feature is not affected anymore, although that should be impossible to use anyway on all affected hardware due to lack of computing power.
# Conflicts:
# src/gl/shaders/gl_shader.cpp
# src/gl_load/gl_interface.cpp
2018-07-28 19:38:47 +02:00
drfrag666
f19e9f24d2
- Fixed: in2D was not always reset in OpenGLSWFrameBuffer::Update(), caused (!in2D) assertion failure.
2018-07-22 18:21:45 +02:00
Christoph Oelckers
6f322940fe
- don't let the video scale let the screen end up with a client size less than 320x200, which may cause undefined behavior and trigger asserts in debug builds.
...
# Conflicts:
# src/gl/system/gl_framebuffer.cpp
# src/v_video.cpp
2018-07-22 12:49:47 +02:00
drfrag666
9c1969e63a
- OpenGLSWFrameBuffer: draw directly to the PBO again (GL_DYNAMIC_DRAW) for Intel GPUs, apparently it's faster.
2018-07-20 12:10:59 +02:00
drfrag666
b3e2a8ab7f
- Changed buffer type for OpenGLSWFrameBuffer to use GL_STREAM_DRAW and a memcpy from system memory on non Nvidia GPUs.
2018-07-19 18:05:13 +02:00
drfrag666
cafb92c637
- Fall back to software mode if the GL renderer cannot start.
2018-06-19 17:08:59 +02:00
Christoph Oelckers
b0531c7293
- disable shader storage blocks if none get reported for vertex shaders.
...
(cherry picked from commit 3069b53804
)
2018-05-20 11:20:11 +02:00
alexey.lysiuk
21ce592771
- skip rendering when application is not active
...
Use vid_activeinbackground CVAR to override this behavior
(cherry picked from commit 2be84dc636
)
# Conflicts:
# src/gl/system/gl_framebuffer.cpp
# src/posix/cocoa/i_video.mm
# src/posix/sdl/gl_sysfb.h
# src/posix/sdl/sdlglvideo.cpp
# src/win32/gl_sysfb.h
# src/win32/win32gliface.cpp
2018-05-10 21:16:38 +02:00
drfrag666
f0542852e6
- Removed some not needed version.h includes.
2018-05-10 13:38:21 +02:00
drfrag666
0c38c72ad7
- Some cleanup.
2018-04-27 22:00:31 +02:00
drfrag666
2a41088fb6
- Partially reverted Blzut3's patch to gl_framebuffer.h. It was no longer applicable.
2018-04-22 14:22:17 +02:00
drfrag
9727484190
- Applied Blzut3's patches to compile with MinGW.
2018-04-22 10:08:00 +02:00
Christoph Oelckers
7301001a3f
- made the necessary adjustments to the HW2D interfaces to handle alpha textures properly.
...
These cannot be done with the regular textures so there needs to be an option to create more than one native texture per FTexture. For completeness' sake there is also the option now to create a paletted version of a texture if the regular one is true color. This fixes a long standing problem that translations were not applied to non-paletted textures.
2018-03-23 23:04:30 +01:00
Christoph Oelckers
d2fa4d0ff9
- most stat stuff done.
2018-03-12 19:33:48 +01:00
Christoph Oelckers
6a02eaa595
- second part of texture fix.
2018-02-15 18:40:23 +01:00
alexey.lysiuk
61979f63c1
Removed last remnants of PowerPC Mac support
2018-02-11 16:35:34 +02:00
Rachael Alexanderson
6aa724a9b4
- add 'gl_riskymodernpath' for computers that worked before the GL >= 3.3 modern path enforcement, since some did, but they seemed to be the exception rather than the rule.
2018-01-03 21:46:04 -05:00
Rachael Alexanderson
1559d74c2c
- repaired the video scaling code
2017-12-10 04:22:28 -05:00
alexey.lysiuk
5162e7162e
Fixed overbright screenshots with hardware gamma off
...
When render buffers are used to apply gamma/brightness/contrast screenshots should not use PNG gamma correction
2017-12-06 11:24:10 +02:00
Christoph Oelckers
2c65f08011
- more timer cleanup
...
* store the frame time in the current screen buffer from where all render code can access it.
* replace some uses of I_MSTime with I_FPSTime, because they should not use a per-frame timer. The only one left is the wipe code but even this doesn't look like it needs either a per-frame timer or a timer counting from the start of the playsim.
2017-11-13 00:28:43 +01:00
Rachael Alexanderson
69abf095c9
- added vid_cropaspect. This cvar turns vid_aspect into a letterboxing function that will crop the unused sides of the screen away, instead of stretching it. Requires one of the non-legacy OpenGL framebuffers to work.
2017-10-07 20:18:37 -04:00
Rachael Alexanderson
8454e09694
- fixed: I was using the wrong check to determine which renderer was in use. Ooops. It now checks for the actual (active) renderer rather than the state of vid_glswfb
2017-09-12 14:32:29 -04:00
Rachael Alexanderson
1e4d7534c4
- remove gl_legacy_mode check in the glswfb
2017-09-12 08:57:27 -04:00
Rachael Alexanderson
79fc219afd
- allow OpenGL 3.0 MESA drivers to use vid_glswfb
2017-09-12 08:18:22 -04:00
Magnus Norddahl
7d21fe6d75
- Fix mouse position being wrong when vid_scalemode is active
2017-07-29 19:26:53 +02:00
Rachael Alexanderson
30087f7cd7
- cleaned up the video scale mode code a bit, in order to increase future flexibility.
2017-07-27 03:05:01 -04:00
David Carlier
64e96c5f46
OpenBSD support
2017-07-25 07:56:19 -04:00
Magnus Norddahl
e06f87cf10
- Added 0.75x scale mode
2017-07-24 08:35:27 +02:00
Magnus Norddahl
18f0f6be4b
- Pixel stretch for 320x200 and 640x400 in glswfb
2017-07-23 17:26:55 +02:00
Rachael Alexanderson
2f37c4b272
- added vid_scalemode == 4 to super-sample the screen
2017-07-23 11:24:04 -04:00
Magnus Norddahl
370e53befe
- Replace vid_max_width and vid_max_height with vid_scalemode for the GL software framebuffer backend
...
- Fix a crash if the window was resized before creating a game
- Fix main menu scaling being wrong if the video mode didn't match the unscaled screen size
2017-07-23 04:23:13 +02:00
Magnus Norddahl
c3702ae9e7
Add vid_scalemode support to GL framebuffer
2017-07-23 00:33:56 +02:00
Rachael Alexanderson
0d8b7c55ef
- added a grayscale formula selector
2017-07-02 16:45:06 -04:00
Rachael Alexanderson
63da6e70c0
- added a vid_saturation control - works in postprocessing, only.
2017-07-02 16:45:06 -04:00
Christoph Oelckers
c74356a1c0
- made OpenGL 3.3 a requirement for running the modern render path. Also force '-glversion 3' to use the modern render path, even though actual OpenGL 3.0 won't support it.
...
This will exclude Intel HD3000 and many obsolete drivers for NVidia and ATI which should have been updated long ago.
2017-06-28 17:57:04 +02:00
svdijk
c698f10257
Fix setting of the gl_legacy_mode cvar.
2017-06-05 14:45:24 +02:00
Magnus Norddahl
7acb492852
- Add gl_shadowmap_quality cvar that controls the resolution of the 1D shadow map texture
2017-06-04 00:44:49 +02:00
Magnus Norddahl
7edb75d299
- The mandatory include compile error fix for unix
2017-06-03 18:28:12 +02:00
Magnus Norddahl
d38dae5de8
- Add gpu stat that displays how much time the GPU spent on named GL groups
2017-06-03 18:14:24 +02:00
Magnus Norddahl
b111a708da
- Fix compile error and some warnings
2017-05-27 06:27:36 +02:00
Magnus Norddahl
3f991429d1
- Reduce the number of naked new/delete calls in OpenGLSWFrameBuffer
2017-05-27 02:31:15 +02:00
Christoph Oelckers
a4231ffd00
- more handling of some very broken old ATI drivers.
2017-05-19 21:33:48 +02:00
Christoph Oelckers
762ba13cd9
- store the last found OpenGL version in the INI so that modern GL related options can be removed when running old hardware with software rendering.
2017-05-08 19:30:51 +02:00
Magnus Norddahl
81de951abc
- Fix missing include
2017-05-06 22:25:18 +02:00