Commit Graph

14581 Commits

Author SHA1 Message Date
Christoph Oelckers 1266339c0f - fixed shader compilation. 2018-05-19 21:17:58 +02:00
Christoph Oelckers 3dc6ddbcc3 - check light direction in the shader.
There are situations where lights on the wrong side of a linedef may be passed and those need to be skipped in the shader code.
2018-05-19 19:20:45 +02:00
Christoph Oelckers 5cffa8873a - added a CVAR to disable per-plane rendering.
This will require some comparisons on older hardware. On my Geforce 1060 rendering the full plane with one draw call is clearly faster in all cases I tested.
2018-05-19 19:19:48 +02:00
Christoph Oelckers cc65490062 - added CVAR to disable WGL_EXT_swap_control_tear.
At least on faster NVidia hardware, setting this to false and gl_finishbeforeswap to true gives a better experience because it reduces screen tearing - but the same setting will reduce frame rate quite dramatically on Intel and can cause bad stalls on some older GPUs when rendering camera textures.
2018-05-19 19:18:38 +02:00
Christoph Oelckers f54cf561ab - missed this. 2018-05-19 15:40:33 +02:00
Christoph Oelckers 3e204080ae - render sector planes in one draw call.
On a fast and modern graphics card this is a lot faster than doing it per subsector but it may not be without drawbacks on older hardware so it will require some testing on older hardware.
For me Frozen Time's view over the bridge went from 46 fps to 51 fps with this change, the time saved was roughly 2 ms.
2018-05-19 15:20:46 +02:00
Christoph Oelckers 352279a52f - removed the non-indexed flat setup.
This won't be needed any longer.
2018-05-19 14:44:16 +02:00
Christoph Oelckers 2125f8b9d1 - use triangles instead of triangle fans to render flats. 2018-05-19 14:42:25 +02:00
Christoph Oelckers fd3681dae2 - use an indexed vertex buffer to render the flats.
Right now this has no advantage but it allows optimizing the data, e.g. rendering an entire sector in one go instead of per subsector.
2018-05-19 13:33:28 +02:00
Christoph Oelckers 5ec47d8b4f - removed some leftover data in sector_t. 2018-05-19 08:25:26 +02:00
Christoph Oelckers ab3bacdaf5 - added missing files to project. 2018-05-18 23:00:10 +02:00
Christoph Oelckers ebbe52082a - fixed vr_enable_quadbuffered for real
I did not consider that this is an init-only option. So changing the CVAR may not affect game behavior at all. Instead its value must be moved to some globally accessible variable on startup that never gets changed again.
2018-05-18 08:44:32 +02:00
Rachael Alexanderson f2e6ca4ced - add 'vid_showcurrentscaling' ccmd, expanded output for 'vid_scaletowidth' and 'vid_scaletoheight' commands
- made the vid_scaleto____ commands less hacky - after finding out I could route the calls through screen->, found the correct screen-> commands, and do scaling based on the real screen dimensions
2018-05-17 19:25:32 -04:00
Christoph Oelckers 1656bbf9ec - route the BlurScene call in the menu through DFrameBuffer.
Game code should never ever call the renderer directly. This must be done through the video interface so that it can also work with other framebuffers later.
2018-05-18 00:22:57 +02:00
Christoph Oelckers 2962fe9f08 - silence some warnings. 2018-05-18 00:12:58 +02:00
Christoph Oelckers b197bfc964 - avoid checking for vr_enable_quadbuffered directly.
This option only exists on Windows, so on the other platforms it should not be in the menu and not affect the setup of the VR mode.
2018-05-18 00:12:45 +02:00
Christoph Oelckers 3f56e02352 Revert "- fix compile on non-Windows targets"
This reverts commit 781cc62f89.

This gets in the way of a real fix.
2018-05-18 00:03:58 +02:00
Rachael Alexanderson 781cc62f89 - fix compile on non-Windows targets 2018-05-17 17:47:42 -04:00
Rachael Alexanderson 872cd529c7 - define zdoom.rc as a proper Windows text file, stop Git from mismanaging it 2018-05-17 17:39:18 -04:00
Christoph Oelckers 46a57fdfa1 - moved the postprocessing CVARs to hwrenderer. 2018-05-17 20:51:42 +02:00
Christoph Oelckers ea98fe3c4d - moved the hardware independent part of custom postprocessing shaders from gl to hwrenderer. 2018-05-17 20:23:01 +02:00
Christoph Oelckers da1cdf65c3 Merge branch 'master' of https://github.com/coelckers/gzdoom 2018-05-17 20:12:44 +02:00
Rachael Alexanderson bcadd2bf04 - also remove unused forward declarations 2018-05-17 06:30:36 -04:00
Rachael Alexanderson 0f36b9d63f - cleaned up vid_scaleto____ code a bit, also set a sane lower limit for vid_scalefactor, removed some code redundancy 2018-05-17 06:24:21 -04:00
alexey.lysiuk 42668c6a5a - fixed seeking end of file in memory reader
https://forum.zdoom.org/viewtopic.php?t=60611
2018-05-17 10:19:29 +03:00
Christoph Oelckers c0837f42bd - gl_system.h as well, in particular this has no place in hw_* files. 2018-05-16 23:34:52 +02:00
Christoph Oelckers 401c9ab8ca - moved gl_interface.cpp/h to gl_load folder.
These files are not part of the actual renderer but part of the system code.
This means, for separated modern and legacy GL renderers, there still will only be one set of this, unlike everything else.
2018-05-16 23:21:21 +02:00
Christoph Oelckers 6e20ece3f4 - moved vr_enable_quadbuffered definition to win32gliface.cpp because this is where it gets used. 2018-05-16 23:14:30 +02:00
Christoph Oelckers fb876852bb - fix warnings. 2018-05-16 22:56:02 +02:00
Marisa Kirisame 1bb00ed4f0 Fix for Unreal meshes that don't have sequential texture numbers 2018-05-16 22:11:24 +02:00
Christoph Oelckers 44dd48c7fa - moved the palette stuff and some remaining scaling code from OpenGLFrameBuffer to DFrameBuffer and fixed GetFlashedPalette 2018-05-16 22:10:24 +02:00
alexey.lysiuk fc91827900 - trigger WorldThingDamaged event before WorldThingDied
https://forum.zdoom.org/viewtopic.php?t=60597
2018-05-16 20:48:59 +02:00
Jonathan Russell e9050a38b3 - added LevelLocals vec2/3Offset(Z) functions for portal-aware offsetting without needing actors 2018-05-16 20:47:43 +02:00
Marisa Kirisame 98f279b651 Remove unnecessary checks. 2018-05-16 20:47:11 +02:00
Marisa Kirisame ffc12eec29 Discarded "UMSH" packed format, now loads _d.3d + _a.3d pairs 2018-05-16 20:47:11 +02:00
Marisa Kirisame f285e550d6 Add support for packed Unreal Engine 1 vertex mesh format.
(concatenated "UMSH" signature + datafile + anivfile)
This is pretty much 100% functional by now.
Hasn't been tested on platforms other than Linux yet, though.
Code definitely deserves some cleaning.
2018-05-16 20:47:11 +02:00
Rachael Alexanderson 0fae13bab4 - added vid_scaletowidth and vid_scaletoheight to calculate vid_scalefactor to reach a certain value on screen dynamics 2018-05-16 11:54:35 -04:00
alexey.lysiuk e1e441091d - fixed potential crash on startup, Windows only
At least one version of Windows SDK (10.0.17134.0) has broken _pgmptr/_get_pgmptr()
It points to an empty string for multi-byte character set applications
GetModuleFileName() is now used instead regardless of compiler/toolchain
Added extra guard against unexpected program paths to avoid crashes

https://forum.zdoom.org/viewtopic.php?t=60598
2018-05-16 11:44:49 +03:00
alexey.lysiuk 751e318c4e - fixed wrong line number in error message
Parser of MAPINFO editor number definitions didn't assign line numbers, so 'Unknown actor class' fatal error displayed some garbage
2018-05-14 14:42:31 +03:00
alexey.lysiuk fa5f936371 - fixed missing saved game picture in software modes
https://forum.zdoom.org/viewtopic.php?t=60574
2018-05-13 16:11:05 +03:00
Christoph Oelckers 8f96729e06 - fixed portal benchmarking and added separate output for 2D and finishing the main scene. 2018-05-13 09:48:19 +02:00
alexey.lysiuk 8a6ae503be - use map axes in bad sound position/velocity warning
https://forum.zdoom.org/viewtopic.php?t=60578
2018-05-13 10:13:59 +03:00
Christoph Oelckers 142368d958 - fixed alpha of weapon sprite. 2018-05-12 18:45:12 +02:00
Christoph Oelckers c2a7a4bf30 - moved viewport code to DFrameBuffer. 2018-05-12 17:23:56 +02:00
alexey.lysiuk f17f8c9359 - added end line to various messages
so they don't screw up further output anymore
2018-05-11 18:03:57 +03:00
Magnus Norddahl 643828f5fa - move 3d floor code into functions 2018-05-11 17:00:12 +02:00
Magnus Norddahl e4d740e586 - more pointless complexity removal 2018-05-11 14:27:09 +02:00
Magnus Norddahl acf9f55849 - remove pointless code 2018-05-11 13:29:24 +02:00
Magnus Norddahl b0cc472e85 - fixed sloped drawer crash 2018-05-11 12:28:10 +02:00
alexey.lysiuk 2c2b19bb7f - fixed crash during autoloading of material textures
https://forum.zdoom.org/viewtopic.php?t=60546
2018-05-10 18:01:29 +03:00