Christoph Oelckers
8177583e2f
- treat configurations which load a secondary WAD on top of a primary IWAD like SVE to consider the secondary WAD an actual IWAD as well.
...
This fixes localization of the SVE menu.
2019-07-15 20:48:00 +02:00
drfrag
416f5d03b7
- Fixed compilation with MinGW.
2019-07-15 19:26:25 +02:00
Christoph Oelckers
293aa2e6da
- There's really no need anymore to dynamically load RawInput, considering it has been in Windows since XP.
2019-07-14 17:41:25 +02:00
Christoph Oelckers
79ad3e6203
- define _WIN32_WINNT to 0x600 (Vista) in the CMake project instead of littering all files with inconsistent settings for the target version.
2019-07-14 16:55:01 +02:00
Christoph Oelckers
f50e402e92
- sorted sound backend code into subdirectories.
2019-07-14 16:07:18 +02:00
alexey.lysiuk
aba7132846
- cleaned up language detection leftovers
2019-07-13 15:47:43 +03:00
Christoph Oelckers
953e388e1c
Merge branch 'master' of https://github.com/coelckers/gzdoom
2019-07-07 08:09:14 +02:00
Magnus Norddahl
259909b6dd
- fix querying for the wrong interface when the UNICODE define is set
2019-06-30 21:13:56 +02:00
Magnus Norddahl
6e29d81502
- remove dead code
2019-06-30 21:13:15 +02:00
Christoph Oelckers
1081338af2
- removed a few obsolete definitions from basictypes.h
2019-06-26 22:13:12 +02:00
Christoph Oelckers
e93de62f98
- eliminated dependency of CVar code on AActor.
...
As a low level feature, the CVAR management should not access game structures like actors, just to retrieve a player index. The index should be calculated by the calling code instead and passed into the function.
# Conflicts:
# src/win32/i_specialpaths.cpp
2019-06-26 21:28:45 +02:00
Christoph Oelckers
3030a6d389
- set Visual C++ compiler to use /permissive- mode and fixed the one error this generated.
...
This also means that Visual Studio 2015 is no longer supported as it has no proper standard conforming compile mode.
2019-06-20 20:25:34 +02:00
Christoph Oelckers
2766303cfc
- consolidated the 3 atterm implementations.
...
Each platform had its own copy. Why?
2019-06-10 12:01:01 +02:00
Magnus Norddahl
756c593e96
- create a new error class for vulkan errors as they are only recoverable during initialization (unlike CRecoverableError which is recoverable during normal processing)
...
- improve vulkan errors by including the status code returned by vulkan if they fail
2019-05-23 14:09:05 +02:00
Christoph Oelckers
ec13d0e4c1
Merge remote-tracking branch 'remotes/origin/vulkan2'
2019-04-22 10:45:32 +02:00
Christoph Oelckers
e6ab678515
- fixed: The minimal window size was not calculated properly.
...
Minimum size is 640x400 client size not 640x400 window size in non-fullscreen.
2019-04-22 10:20:39 +02:00
Magnus Norddahl
62fa74485d
Merge remote-tracking branch 'origin/master' into vulkan2
2019-04-19 18:49:00 +02:00
Christoph Oelckers
327a83a54b
- fixed: GetDisplayDeviceName must always pick a valid monitor.
...
There is no default here, so if vid_adapter is invalid for whatever reason the engine would crash without a defined setting.
2019-04-19 07:33:51 +02:00
Rachael Alexanderson
09a2b53b21
- rename vid_backend
to vid_enablevulkan
. Also changed the CVAR from a 0-state enable to 1-state. So vid_enablevulkan==1
enables vulkan now. This should be less confusing.
2019-04-16 08:10:57 -04:00
Christoph Oelckers
ab256945aa
- use I_Error for throwing errors in the Vulkan backend and print the message if one gets thrown during init.
2019-04-08 23:48:46 +02:00
Rachael Alexanderson
f4ea44b760
- consolidate minimum screen resolution so that it's easier to change
2019-04-07 06:56:06 -04:00
Rachael Alexanderson
efa9284141
- consolidate minimum screen resolution so that it's easier to change
2019-04-07 06:49:54 -04:00
Rachael Alexanderson
e48d2105ef
Merge branch 'master' of https://github.com/coelckers/gzdoom into vulkan2
2019-04-06 00:27:18 -04:00
Christoph Oelckers
0153c2aefa
- use the Unicode version of GetCommandLine for the crash log.
2019-04-04 17:49:53 +02:00
alexey.lysiuk
025e50219f
- fixed missing command line in crash reports
...
https://forum.zdoom.org/viewtopic.php?t=64149
2019-04-04 16:37:51 +03:00
Rachael Alexanderson
ead3695844
Merge branch 'master' of https://github.com/coelckers/gzdoom into vulkan2
...
# Conflicts:
# src/posix/sdl/gl_sysfb.h
2019-03-31 03:49:08 -04:00
Christoph Oelckers
ab16d3cd72
- limit minimum screen size to 640x400.
...
The current menu system simply does not work that well with 320x200, rendering the game hard to use at that tiny screen size. This is a clear case where the work required to keep it operational stands in no relation to the benefit.
2019-03-31 09:13:22 +02:00
Magnus Norddahl
9f0f659db0
- remove old vid_maxfps implementations as they were garbage anyway and the new one works on all the platforms
2019-03-26 11:10:17 +01:00
Christoph Oelckers
a0b0467e91
- restrict Vulkan to 64 bit builds.
2019-03-24 14:34:48 +01:00
Rachael Alexanderson
dd4ef010ab
Merge remote-tracking branch 'origin/master' into vulkan2
2019-03-18 04:05:19 -04:00
Christoph Oelckers
714c656753
- set a Unicode capable font for the Windows console.
...
The default raster font only contains the OEM 437 code page which is quite useless.
2019-03-16 10:50:53 +01:00
Christoph Oelckers
dbd6c2eabf
- removed the automatic system language detection for Windows.
...
Default language is now always American English, just like on Linux and macOS.
2019-03-16 00:07:18 +01:00
alexey.lysiuk
7b5eedea32
- implemented OpenGL / Vulkan switch in SDL backend
2019-03-12 16:12:14 +02:00
Rachael Alexanderson
6be5769746
- implement backend switcher for Windows. NYD: Still needs to be done for Mac and Linux
2019-03-11 23:36:44 -04:00
Rachael Alexanderson
879aae1bd3
Merge branch 'master' of https://github.com/coelckers/gzdoom into vulkan2
2019-03-11 22:07:46 -04:00
Christoph Oelckers
eb4eb1ac00
- use a wide string for the console input buffer.
...
Since this needs to do cursor positioning calculations it's the one spot in the entire engine where UTF-8 would simply be to messy, especially when having to deal with double wide characters.
2019-03-10 17:54:03 +01:00
alexey.lysiuk
108ea066f3
- added initial support of Vulkan to SDL backend
...
Removed all platform-specific code from vulkan device
2019-03-06 13:38:45 +02:00
Magnus Norddahl
319099fee9
Merge remote-tracking branch 'origin/master' into vulkan2
2019-03-05 03:07:30 +01:00
alexey.lysiuk
a3554bda70
- replaced all usages of insecure vsprintf() function
2019-03-04 17:35:38 +02:00
Christopher Bruns
52ab4b968f
Remove Quad-buffered from list of VR-modes if we know it won't work.
2019-03-03 16:15:38 +01:00
Christoph Oelckers
413412f603
Merge branch 'master' into vulkan2
2019-02-23 19:53:38 +01:00
Christoph Oelckers
e091369a38
- removed FCriticalSection and replaced all of its uses with std::mutex.
...
There's really no need for a non-standard solution here anymore with C++11.
This also fixes an unreleased lock in the WildMidi code.
2019-02-22 20:24:24 +01:00
Magnus Norddahl
c6b29846d0
- add 3rd party vulkan dependencies
...
- add stubs for a vulkan hw renderer backend
- add RAII wrappers for vulkan object types
- add builder classes to isolate vulkan boilerplate code
- add a swap chain class
2019-02-20 21:21:57 +01:00
Christoph Oelckers
78d0fa9269
- fixed Windows startup.
...
* the window class name was still ASCII, thanks to some totally pointless and ultimately dangerous type cast to LPCTSTR which rendered all type checks ineffective.
* use wWinMain instead of WinMain so that a Unicode argv gets created. For whatever reason, the ANSI startup leaves this variable empty.
* added a 'disablecrashlog' CCMD for Windows. It is a lot more useful with a debugger present to get the standard crash notification from the system which allows opening a debugger than the crash log and no option to open a debugger.
2019-02-17 10:10:41 +01:00
Christoph Oelckers
f512f29270
- fixed crash log display.
...
This still contained pieces where a multibyte string was passed through SendMessage and WM_SETTEXT. All these have been replaced with SetWindowTextW.
This commit also removes the never used crash log upload code and all associated assets because it is extremely unlikely that such a feature will ever be implemented.
2019-02-17 08:50:49 +01:00
Rachael Alexanderson
0fc4640cc9
- fix building in 32 bit windows
2019-02-16 11:12:10 -05:00
Rachael Alexanderson
9f62289507
Merge branch 'master' of https://github.com/coelckers/gzdoom into localization
2019-02-16 10:50:49 -05:00
Christoph Oelckers
8018ebfab5
- use the Unicode version of Windows's clipboard functions.
2019-02-16 09:50:00 +01:00
Christoph Oelckers
b4d96aaef9
- made Windows backend parts of the console Unicode capable.
2019-02-15 22:05:26 +01:00
Christoph Oelckers
868ac5adf8
- switched the Windows backend to use the Windows Unicode API.
...
With localization for non-Latin languages on the support list the multibyte API doesn't cut it anymore. It neither can handle system text output outside the local code page nor can an ANSI window receive text input outside its own code page.
Similar problems exist for file names. With the multibyte API it is impossible to handle any file containing characters outside the active local code page.
So as of now, everything that may pass along some Unicode text will use the Unicode API with some text conversion functions. The only places where calls to the multibyte API were left are those where known string literals are passed or where the information is not used for anything but comparing it to other return values from the same API.
2019-02-14 22:23:33 +01:00