Magnus Norddahl
48d2d423f6
- remove softpoly scene drawer
2019-05-22 17:16:07 +02:00
Magnus Norddahl
0eda298db2
- create a renderer backend based on softpoly's drawers
2019-05-22 06:29:52 +02:00
Magnus Norddahl
e4dab707e4
- don't run the custom shaders twice on screenshots
2019-05-20 12:46:05 +02:00
Magnus Norddahl
2a15f65065
- apply present shader on screenshots
2019-05-20 12:36:45 +02:00
alexey.lysiuk
bbb75a40ca
- fixed erroneous texture mipmapping in Vulkan render
...
https://forum.zdoom.org/viewtopic.php?t=64257
2019-05-19 14:24:59 +02:00
Magnus Norddahl
680a6f348b
- use one render pass for the entire scene or until postprocess or command buffer flushing forces it to end
2019-05-18 08:12:46 +02:00
Magnus Norddahl
7e37d640dc
- avoid creating a new render pass if a pipeline bind will suffice
2019-05-18 06:54:35 +02:00
Magnus Norddahl
9ab19d057d
- centralize how image transitions are done in the vulkan backend
2019-05-16 18:26:47 +02:00
Magnus Norddahl
99f58855ad
- transition scene images used for the screenshot to color attachment optimal before rendering to them
2019-05-15 16:11:43 +02:00
Magnus Norddahl
3a112c2a47
- fix stencil test not being active when applying SSAO to portals
2019-05-13 22:06:17 +02:00
Magnus Norddahl
f2e37d506e
- fix model chasecam crash
2019-05-12 23:05:31 +02:00
Christoph Oelckers
cf58666708
- fixed: The software renderer was accessing the global viewpoint in several places.
...
Aside from using incorrect values this could crash the renderer if used in the very first rendering frame because the software renderer always operates on a copy.
2019-05-12 09:16:17 +02:00
Magnus Norddahl
7957c423aa
- fix wrong screenshot gamma
2019-05-10 18:02:27 +02:00
Magnus Norddahl
7c3e99a6f1
- Intel on Linux used the footnote in the standard saying a descriptor pool can become fragmented (thanks guys!)
2019-05-10 02:16:26 +02:00
Magnus Norddahl
ce73fe5b16
- fix command buffer invalidation bug when DynamicSet is updated
2019-05-10 01:53:09 +02:00
Magnus Norddahl
a7e8541341
- add fragment shader texture reading as an additional subpass external dependency
2019-05-10 01:04:45 +02:00
Magnus Norddahl
25e23d6ac5
- add vk_debug_callstack for getting the location where a vulkan warning or error happens
2019-05-09 22:41:47 +02:00
Magnus Norddahl
d5761740d3
- fix burn crash on vulkan
2019-05-09 17:55:29 +02:00
Magnus Norddahl
cace5079fe
- oops, patched the wrong file
2019-05-09 16:06:18 +02:00
Magnus Norddahl
d0c4f28162
- only write the warning if r_multithreaded has its default value
2019-05-09 16:01:39 +02:00
Magnus Norddahl
7727263599
- 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-09 15:57:23 +02:00
alexey.lysiuk
7e998c2261
- added handling of GLSL noise() functions to Vulkan backend
...
https://forum.zdoom.org/viewtopic.php?t=64516
2019-05-09 13:29:58 +03:00
alexey.lysiuk
56557a17f1
- 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-08 22:02:05 +03:00
David Carlier
b0a9d63292
OpenBSD build fix.
...
As FreeBSD, does not have malloc.h
aligned_alloc stricly available since C++17/C11, using the local impl.
2019-05-08 09:25:14 +03:00
alexey.lysiuk
a897751fb7
- 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-06 16:02:44 +03:00
Magnus Norddahl
97375feee6
- fix mirror effect shader
2019-05-06 00:15:02 +02:00
Magnus Norddahl
e21ffc131e
- move camtex depthstencil to VkHardwareTexture
2019-05-05 13:36:03 +02:00
pkubaj
3d63f63fb2
Fix build on FreeBSD ( #829 )
...
On FreeBSD malloc.h is deprecated.
<cwctype> is needed for iswalpha.
2019-05-05 08:28:46 +03:00
Magnus Norddahl
e1ae8bbc59
- rendering to texture requires a separate depth/stencil image as the image used by the main view may be using multisampling
2019-05-05 01:58:36 +02:00
Magnus Norddahl
a6515765c8
- fix vkGetQueryPoolResults: parameter dataSize must be greater than 0
2019-05-03 16:10:14 +02:00
Magnus Norddahl
80c09c52bd
- call SetActiveRenderTarget before drawing the software renderer scene
2019-05-03 16:05:41 +02:00
Magnus Norddahl
d1554aed37
- 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-02 01:35:04 +02:00
Magnus Norddahl
ea9be6c225
- fix vulkan crash when changing resolution when using the software renderer
2019-05-02 00:30:54 +02:00
alexey.lysiuk
b23958b204
- 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-01 13:42:07 +03:00
Magnus Norddahl
1973001834
- use the exact sRGB->linear transfer function in HDR mode as the 2.2 gamma approximation is visibly inaccurate in this case
2019-05-01 00:55:31 +02:00
Magnus Norddahl
81e32ecc72
- implement stat gpu on vulkan and fix it on opengl
2019-04-30 22:55:35 +02:00
Magnus Norddahl
692aed0551
- add VulkanQueryPool::getResults
2019-04-30 21:11:44 +02:00
Magnus Norddahl
d504acad68
- add VulkanQueryPool and QueryPoolBuilder
2019-04-30 21:01:55 +02:00
Magnus Norddahl
23d0cce395
- fix shutdown crash due to GetVulkanFrameBuffer returning null when VulkanFrameBuffer is destroyed
2019-04-30 20:02:00 +02:00
Magnus Norddahl
ab8378152f
- make the VkHardwareTexture and VKBuffer linked lists private
2019-04-30 19:49:29 +02:00
Magnus Norddahl
d985d98122
- release staging buffer after the frame it was used in
2019-04-30 19:36:34 +02:00
Magnus Norddahl
34a8e9050b
- this should be better for when vsync is off if I read the vulkan spec correctly
2019-04-30 19:26:28 +02:00
alexey.lysiuk
dffe45835d
- 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 18:43:41 +03:00
Magnus Norddahl
188714dc14
- the light storage buffer is not dynamic
2019-04-28 23:51:09 +02: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
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
Magnus Norddahl
09883431bf
- fix wrong clamp mode used in OpenGL
...
- fix sampler array size on Vulkan
2019-04-20 19:19:34 +02:00