Commit graph

15444 commits

Author SHA1 Message Date
Magnus Norddahl
d00ff65a42 - Intel on Linux used the footnote in the standard saying a descriptor pool can become fragmented (thanks guys!) 2019-05-14 09:56:27 -04:00
Magnus Norddahl
d9722297a4 - fix command buffer invalidation bug when DynamicSet is updated 2019-05-14 09:56:22 -04:00
Magnus Norddahl
42d0209f96 - add fragment shader texture reading as an additional subpass external dependency 2019-05-14 09:56:16 -04:00
Magnus Norddahl
7a5ee7b6de - add vk_debug_callstack for getting the location where a vulkan warning or error happens 2019-05-14 09:56:11 -04:00
Magnus Norddahl
5f26cda27e - fix burn crash on vulkan 2019-05-14 09:56:06 -04:00
Magnus Norddahl
46e07d5aa0 - oops, patched the wrong file 2019-05-14 09:55:59 -04:00
Magnus Norddahl
d3abc71c64 - only write the warning if r_multithreaded has its default value 2019-05-14 09:55:42 -04:00
Magnus Norddahl
e2fc3f2fac - Write out a warning if std:🧵:hardware_concurrency returns zero.
- If the number of cores cannot be determined, turn of multithreading in the software renderer as it is most likely a low end system
2019-05-14 09:55:36 -04:00
alexey.lysiuk
9a1dab57e9 - added handling of GLSL noise() functions to Vulkan backend
https://forum.zdoom.org/viewtopic.php?t=64516
2019-05-14 09:55:26 -04:00
alexey.lysiuk
4e5bd1659c - removed obsolete snd_flipstereo CVAR
https://forum.zdoom.org/viewtopic.php?t=64630
2019-05-14 09:55:20 -04:00
alexey.lysiuk
871b2ead4a - added missing compat flag CVAR for Strife railing
https://forum.zdoom.org/viewtopic.php?t=64627
2019-05-14 09:55:15 -04:00
Nemrtvi
a9ff31fe2e Greek Sigma character fallback
The lowercase Sigma letter in Greek has two different forms (σ and ς), which changes depending on its placement in a word, but in uppercase and smallcaps contexts, it only has one look regardless of word positioning. If the character ς is missing, it should fall back to σ.
2019-05-14 09:55:08 -04:00
alexey.lysiuk
2d69f75092 - fixed output of software renderers with Vulkan backend
Vulkan hardware buffer for software canvas may have some padding
Software renderers should be aware of buffer's pitch in order to copy pixels properly

https://forum.zdoom.org/viewtopic.php?t=64562
2019-05-14 09:54:38 -04:00
David Carlier
2ac7523723 OpenBSD build fix.
As FreeBSD, does not have malloc.h
aligned_alloc stricly available since C++17/C11, using the local impl.
2019-05-14 09:54:25 -04:00
alexey.lysiuk
d964a07835 - fixed compilation warning reported by Clang
src/rendering/hwrenderer/postprocessing/hw_postprocess.cpp:1007:13: warning: delete called on non-final 'PPTexture' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
2019-05-14 09:53:52 -04:00
Magnus Norddahl
d1e8bd61b0 - fix mirror effect shader 2019-05-14 09:53:42 -04:00
Magnus Norddahl
e150483ead - move camtex depthstencil to VkHardwareTexture 2019-05-14 09:52:20 -04:00
pkubaj
9ca0c6a976 Fix build on FreeBSD (#829)
On FreeBSD malloc.h is deprecated.
<cwctype> is needed for iswalpha.
2019-05-14 09:52:13 -04:00
Magnus Norddahl
6591429f25 - rendering to texture requires a separate depth/stencil image as the image used by the main view may be using multisampling 2019-05-14 09:52:06 -04:00
Rachael Alexanderson
d35dec9ce2 - this is version 4.1.1 2019-05-04 15:58:35 -04:00
alexey.lysiuk
8dbf356b73 - improved handling of HUDMSG_TYPEON
This includes the following changes
* Validation of serialized values
* Proper fix for message cut off after an empty line, part of https://forum.zdoom.org/viewtopic.php?t=63935, which appeared to be broken again with dbf06fc
* No crash with an empty HUD message, https://forum.zdoom.org/viewtopic.php?t=63761 and https://forum.zdoom.org/viewtopic.php?t=64569
2019-05-04 15:57:04 -04:00
alexey.lysiuk
f2d8eaef20 - brought back text length check for 'type on' HUD message
https://forum.zdoom.org/viewtopic.php?t=64569
2019-05-04 15:56:59 -04:00
Magnus Norddahl
8775d70e52 - fix vkGetQueryPoolResults: parameter dataSize must be greater than 0 2019-05-04 15:56:53 -04:00
Magnus Norddahl
32ec93b009 - call SetActiveRenderTarget before drawing the software renderer scene 2019-05-04 15:56:38 -04:00
Magnus Norddahl
a2d2c778ae - VMA_MEMORY_USAGE_CPU_TO_GPU does not require VK_MEMORY_PROPERTY_HOST_COHERENT_BIT to bet set. Current implementation requires this flag as vkFlushMappedMemoryRanges is never called. 2019-05-04 15:56:28 -04:00
Magnus Norddahl
35f6c17983 - fix vulkan crash when changing resolution when using the software renderer 2019-05-04 15:56:23 -04:00
alexey.lysiuk
a6354ea0db - fixed 'I' to 'i' upper-to-lower mapping
https://forum.zdoom.org/viewtopic.php?t=64526
2019-05-04 15:56:14 -04:00
alexey.lysiuk
937c25b764 - fixed saved game thumbnails generation with Vulkan renderer
GZDoom aborts with 'Failed to submit command buffer' error on saving a game when open source Intel Vulkan driver (part of Mesa 3D package) is used on Linux
This driver generates VK_DEVICE_LOST error when vkWaitForFences() is called with zero fence count. It must be greater than zero according to Vulkan spec
2019-05-04 15:56:08 -04:00
Magnus Norddahl
074fb10263 - use the exact sRGB->linear transfer function in HDR mode as the 2.2 gamma approximation is visibly inaccurate in this case 2019-05-04 15:55:57 -04:00
Magnus Norddahl
af362beef5 - implement stat gpu on vulkan and fix it on opengl 2019-05-04 15:55:51 -04:00
Magnus Norddahl
fd07e9977c - add VulkanQueryPool::getResults 2019-05-04 15:55:47 -04:00
Magnus Norddahl
1ff2bbc6f3 - add VulkanQueryPool and QueryPoolBuilder 2019-05-04 15:55:36 -04:00
Magnus Norddahl
6c0907a960 - fix shutdown crash due to GetVulkanFrameBuffer returning null when VulkanFrameBuffer is destroyed 2019-04-30 15:02:18 -04:00
Magnus Norddahl
f498df9b1d - make the VkHardwareTexture and VKBuffer linked lists private 2019-04-30 15:02:12 -04:00
Magnus Norddahl
e210084f40 - release staging buffer after the frame it was used in 2019-04-30 15:02:06 -04:00
Magnus Norddahl
cf7d08b604 - this should be better for when vsync is off if I read the vulkan spec correctly 2019-04-30 15:01:54 -04:00
alexey.lysiuk
2c31d436e6 - postponed destruction of Vulkan resources
Provided uniform way to handle lifetime of some of Vulkan resources
This helps to avoid issues like descriptor set that outlives its pool

https://forum.zdoom.org/viewtopic.php?t=64341
2019-04-30 15:01:49 -04:00
alexey.lysiuk
2740645aa1 - tuned internal MoltenVK settings for better performance
See https://github.com/KhronosGroup/MoltenVK/issues/581#issuecomment-487293665
2019-04-30 15:01:42 -04:00
alexey.lysiuk
0e3da97bd9 - made Vulkan Cocoa view opaque
It is recommended to make content view opaque like NSOpenGLView
I didn't notice any difference in performance though
2019-04-30 15:01:36 -04:00
Magnus Norddahl
422f3fdd94 - the light storage buffer is not dynamic 2019-04-30 15:01:15 -04:00
Rachael Alexanderson
085732068b - This is version 4.1.0 2019-04-28 02:41:16 -04:00
alexey.lysiuk
3767a9aec1 - fixed missing null checks in JIT generated code
https://forum.zdoom.org/viewtopic.php?t=64307
2019-04-27 17:05:36 +03:00
alexey.lysiuk
dd7ec1fe44 - fixed crash on JIT allocations over 1 MB
https://forum.zdoom.org/viewtopic.php?t=64383
2019-04-27 14:36:55 +03:00
Christoph Oelckers
15d2b47798 - fixed: RenderCommand::isCompatible failed to properly compare the SpecialColormap.
This resulted in always returning 'false' which prevented merging line draws, ultimately crashing the Vulkan renderer on a buffer overflow.
2019-04-24 20:35:10 +02:00
alexey.lysiuk
6b5f7b4763 - destroy SDL window on Vulkan to OpenGL fallback
https://forum.zdoom.org/viewtopic.php?t=64412
2019-04-23 14:42:43 +03:00
Christoph Oelckers
5122aa0571 - fixed the internal name of the original SmallFont to be different from the real SmallFont. This necessitated creating a separate font object, even if it has the same contents.
- added an OriginalBigFont as well.
2019-04-23 09:34:28 +02:00
Christoph Oelckers
90cc0cf35b Merge remote-tracking branch 'remotes/origin/vulkan2' 2019-04-22 11:43:43 +02:00
Christoph Oelckers
0640a86c1e - removed InitPalette call from VulkanFrameBuffer constructor.
It is as wrong here as in OpenGL because it destroys already set up data.
2019-04-22 11:00:40 +02:00
Christoph Oelckers
ec13d0e4c1 Merge remote-tracking branch 'remotes/origin/vulkan2' 2019-04-22 10:45:32 +02:00
Christoph Oelckers
6f3982865f - refinement of font substitution logic. 2019-04-22 10:23:28 +02:00