hendricks266
ea79d74953
Revert r7908 because it introduces a race on dabuf
...
git-svn-id: https://svn.eduke32.com/eduke32@7928 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:01:27 +02:00
terminx
0d431a390f
Reverse the order video modes are sorted in
...
git-svn-id: https://svn.eduke32.com/eduke32@7922 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 16:01:14 +02:00
terminx
c1aff49e4c
Improve usage of initprintf mutex
...
git-svn-id: https://svn.eduke32.com/eduke32@7908 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:46:35 +02:00
pogokeen
83e863422a
Fix mixing offscreenrendering (render targets) and mirrors. Don't allow recursing beyond 1 level of mirroring through multiple levels of render targets.
...
git-svn-id: https://svn.eduke32.com/eduke32@7853 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:28:42 +02:00
pogokeen
2e75437262
If GL_ARB_clip_control & GL_ARB_depth_clamp are available, reflect that in glinfo
...
git-svn-id: https://svn.eduke32.com/eduke32@7753 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:18:33 +02:00
pogokeen
8cbdf3a0c4
Use stencil buffer in Polymost to restrict mirrors to only render within the region of the screen occupied by the mirror wall.
...
Additionally, raise minimum number of stencil buffer bits to accomodate future use of the stencil buffer.
git-svn-id: https://svn.eduke32.com/eduke32@7736 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/build/include/build.h
# source/build/src/polymer.cpp
# source/build/src/polymost.cpp
# source/kenbuild/src/game.cpp
2019-09-20 14:04:29 +02:00
pogokeen
cdd83905ca
Fix TROR & skyboxes to work with mirrors in Software & Polymost
...
git-svn-id: https://svn.eduke32.com/eduke32@7733 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 13:59:17 +02:00
Christoph Oelckers
8074d8251e
- can be compiled again but crashes.
2019-09-19 23:02:57 +02:00
Christoph Oelckers
53335f20ec
- Blood merge
...
# Conflicts:
# source/build/include/polymost.h
# source/build/src/build.cpp
# source/build/src/engine.cpp
# source/build/src/polymost.cpp
# source/build/src/voxmodel.cpp
2019-09-19 22:06:49 +02:00
Christoph Oelckers
e0f823a492
- refactored texture setup to use an intermediate layer.
2019-09-18 22:16:15 +02:00
Christoph Oelckers
aecdd9b4c5
- this is the state I want to build.
2019-09-13 21:43:05 +02:00
hendricks266
7414f29348
Add buildvfs, abstraction layer for file I/O.
...
Currently it passes calls through to the system libraries as before.
Also adds an incomplete implementation on PhysFS.
git-svn-id: https://svn.eduke32.com/eduke32@7359 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-01 08:51:50 +00:00
terminx
a85b9e8259
Change scope of sdlayer lastSwapTime variable
...
git-svn-id: https://svn.eduke32.com/eduke32@7338 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:32:44 +00:00
terminx
0a3b840d4e
Add error message for SDL_SetGammaRamp() failures in videoSetGamma()
...
git-svn-id: https://svn.eduke32.com/eduke32@7316 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-22 22:51:08 +00:00
terminx
3b7f41e2bb
sdlayer: pass SDL_WINDOW_FULLSCREEN_DESKTOP to SDL_SetWindowFullscreen() when setting a windowed mode that matches the desktop resolution
...
git-svn-id: https://svn.eduke32.com/eduke32@7204 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:38 +00:00
terminx
e513e1ceae
Cleanup includes
...
git-svn-id: https://svn.eduke32.com/eduke32@7186 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:09:48 +00:00
terminx
5164ab4a25
More control/input cleanup
...
git-svn-id: https://svn.eduke32.com/eduke32@7181 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:53 +00:00
terminx
6d4b0f7731
The most minor of minor changes
...
git-svn-id: https://svn.eduke32.com/eduke32@7164 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:10 +00:00
terminx
5c1e350d79
sdlayer: don't add windowed modes that are larger than the monitor's actual resolution
...
git-svn-id: https://svn.eduke32.com/eduke32@7115 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:00 +00:00
terminx
75e141ec81
Fix potential buffer overruns in sdlayer
...
git-svn-id: https://svn.eduke32.com/eduke32@7080 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:04 +00:00
terminx
1f8b23152e
Replace remaining instances of regular malloc/calloc/realloc/strdup with our memory error handler versions
...
git-svn-id: https://svn.eduke32.com/eduke32@7079 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:28:56 +00:00
terminx
3689f9c70c
Useless yet innocuous sdlayer fixes
...
git-svn-id: https://svn.eduke32.com/eduke32@7045 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:44 +00:00
terminx
d4c9cc28d5
Minor fixups needed to build as a native VS project
...
git-svn-id: https://svn.eduke32.com/eduke32@6982 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-28 04:27:42 +00:00
pogokeen
1df7127609
Support software renderer upscaling engine-side in sdlayer and sdlayer12 with various scaling factors (beyond just pixel doubling).
...
When glsurface is available, use GL to upscale the render buffer.
Additionally, fix build issues with sdlayer12 introduced by GLAD changes (r6656).
git-svn-id: https://svn.eduke32.com/eduke32@6939 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-14 21:36:44 +00:00
pogokeen
1b932fddaf
sdlayer.cpp: Don't destroy window resouces if switching between software rendering on glsurface and Polymost/Polymer
...
git-svn-id: https://svn.eduke32.com/eduke32@6938 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-14 21:36:34 +00:00
pogokeen
29c2863750
sdlayer.cpp: fix software renderer crash affecting Mapster32 due to improper handling of lockcount in videoBeginDrawing()/videoEndDrawing() when using glsurface
...
git-svn-id: https://svn.eduke32.com/eduke32@6933 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-28 02:00:42 +00:00
pogokeen
9e90b0633b
glsurface.h/.cpp: change how the palette is handled and fix tinting/fading
...
git-svn-id: https://svn.eduke32.com/eduke32@6932 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-25 14:53:46 +00:00
pogokeen
d5b669ebe5
Don't allow GL modes if GL Major Version is less than 2.
...
Additionally, fix build issues for RENDERTYPE=WIN introduced in r6827.
git-svn-id: https://svn.eduke32.com/eduke32@6921 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-13 19:15:22 +00:00
pogokeen
7fd844a795
sdlayer.cpp: don't alter desktop composition using win_setvideomode() if we're creating an SDL window for rendering GL
...
git-svn-id: https://svn.eduke32.com/eduke32@6920 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-13 19:15:19 +00:00
pogokeen
9d243606d0
When OpenGL is available, prefer using the new glsurface to blit the classic renderer's 8-bit buffer to the screen.
...
git-svn-id: https://svn.eduke32.com/eduke32@6919 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-13 19:15:16 +00:00
terminx
df50dcd897
Change mouseGrabInput()'s parameter to a bool
...
git-svn-id: https://svn.eduke32.com/eduke32@6851 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:35:52 +00:00
terminx
1cb6ab9db1
Prevent divide by 0 when SDL_GetCurrentDisplayMode()/SDL_GetClosestDisplayMode() say the refresh rate is 0
...
git-svn-id: https://svn.eduke32.com/eduke32@6833 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:04:07 +00:00
terminx
1fd209444f
Continuing the quest for clearer function names
...
git-svn-id: https://svn.eduke32.com/eduke32@6829 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:03:12 +00:00
terminx
0340e3cc0f
Engine function name cleanup round 2
...
git-svn-id: https://svn.eduke32.com/eduke32@6828 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:02:51 +00:00
terminx
ee63d2c070
Beginnings of baselayer.cpp/.h refactor. This is 99.9% renames.
...
git-svn-id: https://svn.eduke32.com/eduke32@6827 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:02:31 +00:00
terminx
7fc541f0d5
#if guard unncessary mouse position check with SDL2
...
git-svn-id: https://svn.eduke32.com/eduke32@6797 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-02 22:00:38 +00:00
hendricks266
322f1b46dd
Disable the switching of keyboard layout on window focus gain and loss.
...
git-svn-id: https://svn.eduke32.com/eduke32@6708 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 20:27:58 +00:00
hendricks266
e26760b6af
Use the user's desktop resolution, fullscreen, as the default, instead of 1024x768 windowed.
...
git-svn-id: https://svn.eduke32.com/eduke32@6704 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 14:46:52 +00:00
hendricks266
6f7313a46a
Fix whitespace issues
...
git-svn-id: https://svn.eduke32.com/eduke32@6700 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 14:46:36 +00:00
pogokeen
9f48927ea8
sdlayer.cpp: fix vsync heartbeat issue on some NVidia & Intel drivers
...
git-svn-id: https://svn.eduke32.com/eduke32@6689 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-22 23:25:56 +00:00
pogokeen
e5c6cc2238
sdlayer.cpp: remove unnecessary call to SDL_WarpMouseInWindow() on SDL2 that was causing issues with mouse movement when vsync was enabled on some hardware
...
git-svn-id: https://svn.eduke32.com/eduke32@6683 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-22 03:38:54 +00:00
pogokeen
1f133cd049
Polymost: streaming VBO optimizations for polymost_drawpoly()
...
git-svn-id: https://svn.eduke32.com/eduke32@6662 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:48 +00:00
pogokeen
3ca5f33c73
Moved to GLAD for dynamic GL/WGL and extension loading.
...
Refactored extension usage that became core in GL2, and adjusted some types for GL2 compatibility.
git-svn-id: https://svn.eduke32.com/eduke32@6656 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:21 +00:00
hendricks266
4978a8f167
Fix some preprocessor logic errors regrading GL ES on ARM devices with desktop operating systems.
...
git-svn-id: https://svn.eduke32.com/eduke32@6603 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-28 04:30:46 +00:00
terminx
ca308d5879
Happened to be reading a SDL doc and noticed we were creating our surface with the wrong flags
...
git-svn-id: https://svn.eduke32.com/eduke32@6567 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-17 09:27:32 +00:00
terminx
3ab1c2c722
Fix problem where sometimes fullscreen GL modes display incorrectly. I'm not sure why this fixes it and I believe it to be a SDL bug.
...
git-svn-id: https://svn.eduke32.com/eduke32@6544 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-09 02:56:17 +00:00
terminx
f97aee59c8
Address issue where timers will no longer update after several hours of runtime
...
git-svn-id: https://svn.eduke32.com/eduke32@6543 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-09 02:56:12 +00:00
terminx
f203ca78a2
Amend r6439
...
git-svn-id: https://svn.eduke32.com/eduke32@6444 1a8010ca-5511-0410-912e-c29ae57300e0
2017-09-21 04:32:14 +00:00
terminx
ac3faa5fd4
Force enabling NVIDIA threaded optimizations. Probably only works on Linux, but the extra putenv() call doesn't hurt anyone anywhere else.
...
git-svn-id: https://svn.eduke32.com/eduke32@6439 1a8010ca-5511-0410-912e-c29ae57300e0
2017-09-19 19:10:27 +00:00
terminx
5cde84e58a
Ignore video modes with resolutions less than 640x480 or with aspect ratios taller than around 4:3 when populating the mode lists used in the startup window and menus. Sorry to the two guys still using nasty 5:4 1280x1024 monitors in 2017; you'll have to set your resolution using the console now.
...
git-svn-id: https://svn.eduke32.com/eduke32@6435 1a8010ca-5511-0410-912e-c29ae57300e0
2017-08-27 10:20:41 +00:00
hendricks266
77875948ba
Eliminate more cases of duplication of compat.h's functionality.
...
git-svn-id: https://svn.eduke32.com/eduke32@6075 1a8010ca-5511-0410-912e-c29ae57300e0
2017-02-25 08:15:45 +00:00
hendricks266
aa04307ad1
Route all inclusion of libc headers and most of POSIX headers through compat.h.
...
git-svn-id: https://svn.eduke32.com/eduke32@6074 1a8010ca-5511-0410-912e-c29ae57300e0
2017-02-25 08:15:36 +00:00
hendricks266
d4ee6d00c8
Route inclusion of all Windows headers through a new header, windows_inc.h.
...
This allows us to make certain guarantees about limits on the extent of namespace pollution these headers introduce.
git-svn-id: https://svn.eduke32.com/eduke32@6065 1a8010ca-5511-0410-912e-c29ae57300e0
2017-02-19 22:15:44 +00:00
hendricks266
417b047cf3
Bring the previous commit into effect.
...
git-svn-id: https://svn.eduke32.com/eduke32@6056 1a8010ca-5511-0410-912e-c29ae57300e0
2017-02-01 10:20:54 +00:00
hendricks266
1cc9d13ccf
The great repository rearrangement of 2017.
...
Files moved but not modified. Changes to follow in a subsequent commit.
You down with CPP?
git-svn-id: https://svn.eduke32.com/eduke32@6055 1a8010ca-5511-0410-912e-c29ae57300e0
2017-02-01 10:01:11 +00:00