Commit graph

17636 commits

Author SHA1 Message Date
alexey.lysiuk
ff4bc8bab9 - use EXT_metal_surface extension for Vulkan surface creation
Prefer EXT_metal_surface over deprecated MVK_macos_surface extension, and use it only when modern one is not available
2019-08-03 13:16:12 +03:00
Blue Shadow
5abffabb56 - moved GetSaveAmount() from the base armor class 2019-08-03 11:14:03 +03:00
alexey.lysiuk
cf81ab465e - updated Vulkan headers to version 1.1.114
This is the latest version released with Vulkan SDK
New headers are needed for EXT_metal_surface
2019-08-03 10:52:04 +03:00
Blue Shadow
479a992a3e - fixed buggy ArmorFactor behavior when set to a value other than 1.0 2019-08-02 15:10:06 +03:00
alexey.lysiuk
5870cb7ea1 - recreate Vulkan swapchain in case of surface lost error
Do not abort with fatal error when VK_ERROR_SURFACE_LOST_KHR was returned from vkAcquireNextImageKHR() or vkQueuePresentKHR()
So far, only gfx-portability implementation is reporting this error from time to time, usually on startup, entering the game, or task switching
2019-08-02 10:21:06 +03:00
Christoph Oelckers
3e99216967 - added option to print a map author's name on the summary screen
For now only with font-printed map names. Allowing this with titlepatches will require more work and an option to disable.
2019-08-02 09:11:40 +02:00
Christoph Oelckers
154af34cd9 - added an option to always display the log and the subtitles with the generic font.
If this is on it will disable the status bar's pop screen for the log and always use the HUD overlay instead.
2019-07-31 17:02:39 +02:00
Christoph Oelckers
045025f4cf - text update. 2019-07-31 10:08:47 +02:00
Christoph Oelckers
c36dc137ba - made adjustments to the text placement on the summary screen.
With extended fonts much of the old code did not work anymore, this needed more precise checks for the sources of the printed texts.
2019-07-30 10:53:02 +02:00
alexey.lysiuk
370f5ef234 - fixed writing of texture matrices in Vulkan render backend
https://forum.zdoom.org/viewtopic.php?t=65479
2019-07-30 11:46:14 +03:00
Christoph Oelckers
afbd7f7a24 - increased StreamBuffer size because I got it to crash with comatose.wad once due to an overflow here. 2019-07-28 19:05:39 +02:00
Magnus Norddahl
ad8c5bb96e - add VkRenderPassManager::GetVertexFormat so that all VkRenderState access is done through functions that can then be made thread safe 2019-07-28 17:20:49 +02:00
Magnus Norddahl
76675a4d61 - add VkMatrixBufferWriter so that both buffers are used same way in VkRenderState 2019-07-28 17:04:56 +02:00
Magnus Norddahl
4adac3fe59 - move streaming uniform buffers out of VkRenderState 2019-07-28 16:28:43 +02:00
alexey.lysiuk
05cae50612 - updated bzip2 to version 1.0.8
https://www.sourceware.org/bzip2/
https://sourceware.org/pub/bzip2/bzip2-1.0.8.tar.gz
2019-07-28 11:53:32 +03:00
Christoph Oelckers
c577f1d743
Merge pull request #899 from khutchins/master
Adds option to use a quicksave rotation
2019-07-28 08:44:21 +02:00
Kevin Hutchins
5cb59018e0 Adds option to use a rotation of quicksaves instead of having one quicksave slot that needs to be manually created. 2019-07-27 12:09:55 -07:00
alexey.lysiuk
a308becb48 - pass NSView instance when creating macOS Vulkan surface
MoltenVK allows passing a layer, although Vulkan specs prohibit this
https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkMacOSSurfaceCreateInfoMVK.html

This helps with testing of renderer using Vulkan Portability Implementation
2019-07-27 12:55:05 +03:00
Christoph Oelckers
8219c3fd07 - corrected character offsets. 2019-07-27 11:29:18 +02:00
Christoph Oelckers
1dd98a5c89 - when using the VGA font, confine the speaker's text in Strife dialogues to the backdrop picture.
This looks a lot better. Unfortunately for the regular SmallFont this would severely reduce the available space for the text so it isn't done here, even though for shorter texts the formatting would look better as well.
2019-07-27 09:35:45 +02:00
Christoph Oelckers
b768c6877c - text update 2019-07-27 09:00:49 +02:00
Christoph Oelckers
d222bee7f9 - Serbian characters for Strife's BigFont. 2019-07-26 22:11:08 +02:00
Christoph Oelckers
c1a620dce6 - Serbian characters for Strife's log font. 2019-07-26 21:53:02 +02:00
Christoph Oelckers
69cc2cb527 - Serbian characters for Chex's BigFont. 2019-07-26 21:24:33 +02:00
Christoph Oelckers
86d2742798 - allow switching the Strife conversation screen to the VGA font for all languages by a CVAR.
This is for readability purposes because the styled SmallFont may be problematic for some players.
2019-07-26 20:23:46 +02:00
Christoph Oelckers
495f2d9c82 - changed subtitle duration to last at least 7 seconds, even for shorter sounds so that there is sufficient time to read them. 2019-07-26 20:18:01 +02:00
alexey.lysiuk
222dfd17b7 - added ability to specify display duration of subtitles
Duration of sound playback and subtitles display will be synchronized if sound id is specified
For existing Strife messages this works out of the box

https://forum.zdoom.org/viewtopic.php?t=65379
2019-07-26 20:11:42 +02:00
Christoph Oelckers
4964c840e5 - fixed: Harmony did not declare its status bar class. 2019-07-26 20:11:00 +02:00
Christoph Oelckers
933244123f - Serbian characters for Hacx SmallFont 2019-07-26 19:52:46 +02:00
Christoph Oelckers
9ceef609f5 - Serbian characters for Hacx's BigFont. 2019-07-26 19:38:42 +02:00
Christoph Oelckers
b4b314790f - added the Serbian characters to the Harmony SmallFont. 2019-07-26 19:19:58 +02:00
Christoph Oelckers
b4aacb7be5 - fixed: The numcommands value in A_KoraxCommand needs to be decremented by one because the max parameter of the random function is inclusive. 2019-07-25 20:42:41 +02:00
Christoph Oelckers
4cfc650f5b - fixed line breaking on non-spaces for multi-byte UTF-8 characters.
This needs to backtrack the entire code point, not just one byte.
2019-07-24 21:40:17 +02:00
Major Cooke
15eabfd055 Added A_SoundPitch and an optional pitch parameter to A_PlaySound and S_Sound.
- Note: Because sound channels are not in zscript, there's no way to modify a sound made by S_Sound.
2019-07-24 20:15:24 +02:00
Christoph Oelckers
9d66a5105a - text update.
This also activates Serbian and Japanese in the menu.
Note that Serbian is still missing a few characters in Hacx and Harmony!
2019-07-23 21:30:12 +02:00
alexey.lysiuk
435f0bb0b0 - fixed crash on player unmorph after falling death
Rearranged conditions to avoid accessing player from obsolete morphed pawn
Unmorphing upon death resets player in morphed actor, so player alive state should be tested first
Removed duplicate health check as well

https://forum.zdoom.org/viewtopic.php?t=65429
2019-07-23 12:10:16 +03:00
Christoph Oelckers
7e71532ccc - fixed some discrepancies in Harmony's actor definitions. 2019-07-22 21:20:51 +02:00
Christoph Oelckers
7b680e2f12 - moved misplaced file. 2019-07-22 21:11:06 +02:00
Christoph Oelckers
c262591f0e - added alternative character mapping for Greek letters.
Although not really needed yet, this allows striking 19 characters off the support list, except for the Raven fonts without any real work.
2019-07-18 21:40:04 +02:00
Christoph Oelckers
8a71717ab4 - added the 3 missing Serbian characters to Harmony's BigFont 2019-07-18 21:01:51 +02:00
Christoph Oelckers
dfab86748a - added the 5 extra Serbian characters for Strife's SmallFont. 2019-07-18 20:43:31 +02:00
3saster
5eb2a6b681 FPS counter no longer blocks level time on automap
Respects HUD & Console scaling
2019-07-18 10:41:23 +02:00
Christoph Oelckers
9219834a1a Revert "- fixed the calculations which decide whether to use an options menu for skills and episodes."
This reverts commit d308a1223b.

This does not work because the menu treats negative coordinates differently.
On top of that, changing size of the episode and skill menus dynamically depending on screen size is causing secondary problems so this is better reverted to the previous state.
2019-07-17 21:10:29 +02:00
Christoph Oelckers
95349822c4 - for the map name on the automap, fall back to the original SmallFont if the actual one cannot print it.
This is mainly for mods which provide a new font but do not alter the automap texts, a good example is Hell Revealed 2.
2019-07-17 20:28:07 +02:00
Christoph Oelckers
b360f04e28 - use proper interface calls to give the initial BasicArmor to the player.
The old code didn't check if giving the item was proper and just went ahead adding it to the inventory unconditionally.
2019-07-17 20:08:43 +02:00
Christoph Oelckers
b37acef0c9 - added the two missing subtitle texts for Strife.
These are identical to the actual logs but it turned out that these texts need to be separate to avoid misbehavior.
This also disables the subtitles for the teaser because its log numbers collide with the full game.
2019-07-17 20:02:43 +02:00
alexey.lysiuk
9603a09f82 - added PSprite.bMirror flag to ZScript class definition
https://forum.zdoom.org/viewtopic.php?t=65372
2019-07-17 12:20:05 +03:00
Christoph Oelckers
56cb7cbaea - did a bit of cleanup on the MAPINFO organization
What could be done has been moved into the filter directory of game_support.pk3

Unfortunately most of the rest is needed as presets even for custom games so it cannot be fully cleaned up, because the dependencies here and the filter structure do not align 100%.
2019-07-17 01:05:58 +02:00
Christoph Oelckers
77b1ebe0d7 - moved several IWAD dependent files into the game_support resource
* sprite offset definitions, which are IWAD dependent
* Freedoom's decal overrides
* conversation ID definitions for the Strife teasers
* the fallback BigFont now can also be loaded by IWADs which declare themselves as GAME_Heretic or GAME_Hexen.
2019-07-17 00:54:59 +02:00
Christoph Oelckers
c64aedb262 - reimplemented the Harmony status bar in ZScript
* the Doom status bar has been partially virtualized to allow overriding specific parts of it, most notably the ammo display
* the internal Harmony status bar has been removed because it only works with the now disabled Dehacked patch.
* the SBARINFO definition has been removed, instead it uses a ZScript-based status bar now which overrides the ammo display to use the new ammo types instead.
2019-07-17 00:36:38 +02:00