Commit Graph

17229 Commits

Author SHA1 Message Date
alexey.lysiuk 97fc3aa9a6 - avoid Vulkan initialization when it's disabled in Cocoa backend 2019-03-17 14:45:47 +02:00
alexey.lysiuk 83de8ae5a0 - fixed white flash on startup with Metal-based view 2019-03-17 14:44:16 +02:00
alexey.lysiuk 250e4ed622 - do not use OpenGL function to clear screen in Cocoa backend
In fullscreen mode there is a white flash (of the default background color) on startup
To overcome this an explicit glClear() with flush buffers was used
In order to make video mode switch more generic, any backend specific functionality should be avoided here
2019-03-17 14:42:14 +02:00
Christoph Oelckers 7d93983669 - fixed: SpawnShootDecal tried to get the current level from a value that could point to actor defaults which do not have a level. 2019-03-17 13:19:17 +01:00
Christoph Oelckers 4f7ad5b130 - make the clean scaling system more consistent.
Now, all menus will use the same scale, i.e. it only depends on the screen width and a base size of 640. This nearly universally yields better results than trying to make a 320x200 screen fit.
The only exceptions to this are the intermission screens and the level summary. These, unlike the menu need to try to make a 320x200 screen fit, but without all the hackery that was present to adjust the menu display.
Note that since this affects globally visible script variables, both the intermission and summary drawers will not use their own set but instead temporarily override the global setting as long as they run their own code.
Changing the use of variables here might cause much worse problems with menu code so it wasn't attempted
2019-03-17 12:06:09 +01:00
Christoph Oelckers 0ff703c361 - fixed: Doom's episode names were not translatable. 2019-03-17 10:11:02 +01:00
Christoph Oelckers ba13a540e4 - changed default graphics substitution rules to be more localization friendly.
The default was changed to replace graphics if only known content is affected.
This also required blocking the feature for Hacx, Harmony and Action Doom 2 which have no localization yet and would fall back on Doom's texts if not blocked.
2019-03-17 09:27:40 +01:00
Magnus Norddahl c00a46043d - implement ssao 2019-03-16 23:37:38 +01:00
Alexander aa9c484b3b automap options readability changes 2019-03-16 20:01:26 +01:00
Christoph Oelckers 3fde5535c7 - replaced the "or" in the keybind menu with a darker comma so that this part is language neutral. 2019-03-16 19:00:56 +01:00
Christoph Oelckers 9b76c47dbe - added some placeholder strings to language.def.
This is in preparation for the spreadsheet based text handling.
2019-03-16 18:56:20 +01:00
Alexander 73d81d3983 added option search menu 2019-03-16 18:40:13 +01:00
alexey.lysiuk 540e180fb1 - fixed log text output to console
src/p_user.cpp:429:42: warning: data argument not used by format string [-Wformat-extra-args]
2019-03-16 14:45:16 +02:00
alexey.lysiuk ac9a428196 - fixed compilation error with some versions of GCC and Clang
src/p_acs.cpp:8719:100: error: cannot pass non-trivial object of type 'FString' to variadic function; expected type from format string was 'char *' [-Wnon-pod-varargs]
2019-03-16 14:39:29 +02:00
Christoph Oelckers 669b13ab8a - cleanup and fixes in console code
* consolidated C_MidPrint and C_MidPrintBold.
* removed some unused code from the console buffer.
* handle console output of centered messages to ensure they get written to the log file and to stdout.
* replaced the non-standard bar strings with simple '-'s. These were making things needlessly complicated when redirecting console output and the new font does not have the characters anyway.
* removed some old code from a time when during console drawing new network events could come and have more text printed. This can not happen anymore with how 2D elements are being handled now so all this code was redundant.
2019-03-16 13:02:38 +01: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
Magnus Norddahl 990d61f41a - fix compile error 2019-03-16 04:18:35 +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
Magnus Norddahl 05f0730c9d - convert PPStep to PPRenderState 2019-03-15 23:24:31 +01:00
Christoph Oelckers 04281d4a0b - fixed positoning issues in the load/save menu. 2019-03-15 20:22:40 +01:00
Christoph Oelckers 2573ca8ac4 - disabled the error message spam from the demo loop
These messages are useful for the playdemo CCMD, but since the demo loop is mostly non-functional anyway they better be disabled there.
2019-03-15 12:18:12 +01:00
alexey.lysiuk c0d843b596 - fixed crash on startup inside userinfo_t::GetGender()
This function is required for localization handling but when it's called userinfo_t may not be fully initialized yet

https://forum.zdoom.org/viewtopic.php?t=63959
2019-03-15 13:12:53 +02:00
Magnus Norddahl cce96ca87a - implement shadow maps 2019-03-15 07:54:34 +01:00
Magnus Norddahl 836938440c - move swapchain and the presentation related synchronization objects out of VulkanDevice 2019-03-14 23:33:19 +01:00
Magnus Norddahl 9b207b8fe6 - implement save pic 2019-03-14 23:07:52 +01:00
Christoph Oelckers 50ebca20bb - do not use iswspace to check raw UTF-8.
At least under MSVC this function reports 0x85 as whitespace, but it is a continuation byte for UTF-8 sequences and may not be treated as whitespace.
2019-03-14 21:42:02 +01:00
alexey.lysiuk 087353f00b - fixed dynamic lights flickering with GL3 render path
https://forum.zdoom.org/viewtopic.php?t=63755
2019-03-14 14:53:24 +02:00
Rachael Alexanderson 5fef5d13ce Merge branch 'master' of https://github.com/coelckers/gzdoom into vulkan2 2019-03-13 22:08:11 -04:00
Magnus Norddahl 2d885d4e4c - add some support for using the HDR10 ST2084 color space on monitors that support it (unfortunately it doesn't work, and with virtually no documentation either from nvidia or khronos it is hard to say why) 2019-03-14 00:21:53 +01:00
Christoph Oelckers 613cf15b31 - fixed: player_t::GetGender needs to check if the CVAR exists.
This function can get called before the player's userinfo is available
2019-03-13 18:06:59 +01:00
Magnus Norddahl 625cc11ea2 - capture screenshot support 2019-03-13 14:10:13 +01:00
Chronos Ouroboros 8dea4f9523 Fixed arrays of dynamic arrays causing a compilation error. 2019-03-13 12:42:45 +01:00
Magnus Norddahl 5d2917bb4f - implement RenderTextureView 2019-03-13 11:14:42 +01:00
Christoph Oelckers 04bf975796 Merge branch 'master' of https://github.com/coelckers/gzdoom 2019-03-13 10:39:22 +01:00
Christoph Oelckers 561444f921 added printlocalized CCMD to check strings in-game. 2019-03-13 10:38:51 +01:00
Chronos Ouroboros 7165b40657 Fixed nested dynamic array indexing causing a compilation error. 2019-03-13 10:23:06 +01:00
Christoph Oelckers 43ca814da8 - fixed: The FFont* serializer was unable to handle null pointers. 2019-03-13 07:11:46 +01:00
Christoph Oelckers 7f8b048347 - added a fallback mapping for the typographic upper quotation mark to the generic form 2019-03-13 07:07:56 +01:00
Magnus Norddahl d78cb959a7 - implement wipe screen copy 2019-03-13 02:23:33 +01:00
Magnus Norddahl a585a90d81 - VkHardwareTexture needs to BFF with FTexture 2019-03-13 01:15:50 +01:00
Magnus Norddahl 83ee884ffc - remove dead code 2019-03-13 00:59:39 +01:00
Magnus Norddahl e5e9924c5e - remove IShaderProgram and make the old classes an implementation detail of the OpenGL backend. In the long run they should be removed completely as their weird design is mostly an artifact of once having supported OpenGL 2 2019-03-13 00:52:25 +01:00
Magnus Norddahl 903f8b6696 - move the active render target from VkRenderPass to VkRenderState 2019-03-13 00:18:27 +01:00
Magnus Norddahl dca0b75038 - change the images to be upside down until presentation to increase compatibility with shaders designed for OpenGL
- clamp scissors fully to avoid NVidia's awful drivers locking up the entire system if they end up out of bounds
- perform buffer clears as part of the render pass. this puts some restrictions on how FRenderState.Clear can be used
- add an offset uniform to the present shaders so the vulkan target can flip the image during presentation
2019-03-12 23:53:20 +01:00
Magnus Norddahl 0620041228 - remove screenquadscale.vp 2019-03-12 16:24:55 +01:00
Magnus Norddahl a26e2cd8e0 Merge branch 'vulkan2' of https://github.com/coelckers/gzdoom into vulkan2 2019-03-12 16:17:39 +01:00
Magnus Norddahl db6a4781c8 - clip scissors (tired of my computer blue screening - thanks NVidia!)
- wrap viewport
2019-03-12 16:17:26 +01:00
alexey.lysiuk 3dd25bd4c0 - implemented OpenGL / Vulkan switch in Cocoa backend 2019-03-12 16:12:23 +02:00
alexey.lysiuk 7b5eedea32 - implemented OpenGL / Vulkan switch in SDL backend 2019-03-12 16:12:14 +02:00
Magnus Norddahl aa84f7b3e6 - fix shaders only being loaded from the engine pk3 2019-03-12 15:02:21 +01:00