Commit Graph

14295 Commits

Author SHA1 Message Date
Philip Rebohle 14eea0f8a1 Add missing strings for Vulkan task and mesh shaders.
Fixes a crash when replaying a capture that uses mesh/task shaders
with GPL.
2024-01-09 11:14:35 +00:00
Jake Turner 4a620bb5a1 Fix Vulkan wireframe overlay, set the dynamic state polygonMode
When replaying capture using "vkCmdSetPolygonModeEXT(VK_POLYGON_MODE_FILL)"
2024-01-04 15:25:05 +00:00
Jake Turner 8f2c311670 Added parameter test for ID3D11Device2 GetResourceTiling 2024-01-04 14:38:59 +00:00
wanghaiwei 3d96ccd6d1 Fix D3D11_2 GetResourceTiling return unsupport value
Change to use UnwrapResource helper function
2024-01-04 10:09:49 +00:00
Jake Turner 93eb160e08 Revert "Update VMA Allocator to v3.0.1"
It is causing more problems than benefits

This reverts commit 6895194805.
2024-01-03 13:34:13 +00:00
Jake Turner a871457172 Disable "nullability-completeness" warning in Tests project 2024-01-03 09:57:26 +00:00
Jake Turner 9dad897802 Enable D3D12 Pixel History Depth Bounds test
Replay code was fixed in 3d5ce05e11
2024-01-02 14:05:00 +00:00
Jake Turner 04856b53c1 Enable D3D12 Pixel History MSAA test
Replay code was fixed in 7e8c22ce68
2024-01-02 14:05:00 +00:00
Jovan Ristic 3d5ce05e11 Add D3D12 pixel history depth bounds test.
* Copied from the Vulkan implementation.
2024-01-02 12:49:46 +00:00
Jovan Ristic 71a5d3dae0 Fix D3D12 pixel history on MSAA depth stencils.
* Performing pixel history on an MSAA depth target caused a memory
stomp due to the depth and stencil copies being mis-identified as a
4-component operation, stomping the following 12 bytes. For the depth,
this stomped the stencil and the following padding, but when the
missing stencil copy was added in 4815ada it stomped
dsWithoutShaderDiscard as well. This triggered an assert due to a clear
event appearing to have frags associated with it.
2024-01-02 12:15:37 +00:00
Jovan Ristic 7e8c22ce68 Fix D3D12 pixel history MSAA test issues.
* Add missing resource transitions for the dispatch copy to fix
validation issues encountered while running the test.
* Adjust the MSAA copy path to use the second channel for stencil to
fix copies failing to output anything, which manifested as the fragment
only showing one primitive without correct output data.
2024-01-02 12:15:37 +00:00
Jake Turner 902a095c60 Marked GL Pixel History as a slow test 2023-12-31 08:41:23 +00:00
Jake Turner 79465c670f D3D12 Pixel History set fragment postMod stencil to unknown (-2) 2023-12-31 08:41:23 +00:00
Jake Turner 51ae45420d Extend D3D11 Pixel History tests
Validate that in a fragment event the postMod stencil value should be unknown (-1 or -2)
2023-12-31 08:41:23 +00:00
Jake Turner 0171ee464a Tidyup python logging in GL Pixel History 2023-12-31 08:41:23 +00:00
Jake Turner a70bed751b Extend D3D12 Pixel History tests
Check the post mod stencil at pixel location 110,100
Check the post mod stencil is unknown at pixel location 275, 260 for fragment zero of a multi-fragment event

Validate that in a fragment event the postMod stencil value should be unknown (-1 or -2)
This test validates the code change in 4815adaa83
2023-12-31 08:41:23 +00:00
Jake Turner baa5999582 Extend Vk Pixel History tests
Check the post mod stencil at pixel location 110,100
Check the post mod stencil is unknown at pixel location 275, 260 for fragment zero of a multi-fragment event

Validate that in a fragment event the postMod stencil value should be unknown (-1 or -2)
2023-12-31 08:41:23 +00:00
Jovan Ristic 4815adaa83 Fix D3D12 pixel history missing stencil copy.
* When viewing pixel history on a depth stencil, the depth value was
copied but the stencil value was not.
2023-12-29 19:21:14 +00:00
Jake Turner 6895194805 Update VMA Allocator to v3.0.1
Disabled warnings 4189, 4324 for vk_test.cpp

4189: 'identifier' : local variable is initialized but not referenced

4324: 'struct_name' : structure was padded due to __declspec(align())

because of warnings in vk_mem_alloc.h
2023-12-22 12:53:40 +00:00
Jake Turner 65e77c56ba Vulkan PipelineSate CS Tooltip now says "Save Shader SPIR-V"
Minor copy-paste error used to say "Save Shader DXBC"
2023-12-22 12:53:40 +00:00
Jovan Ristic a7e8422237 Fix D3D12 pixel history lacking primIDs for draws without a PS.
* No rendertarget was bound to the primitive ID generating draw
because rts is empty in draws without a rendertarget bound in the base
draw. Setting rts[0] was presumably stomping memory instead in this
case.
* Included is a fix for validation layer error thrown when reproducing
the problem, in D3D12ColorAndStencilCallback during a Pre/PostDispatch
CopyPixel uses the value of m_SavedState but was not set. In the case
of rpFlags, the value was uninitialized because D3D12RenderState does
not include it in its constructor. That caused an invalid resource
transition to be issued and was fortunately caught by the debug layer,
otherwise it was thus far invisible when running without debug on.
2023-12-22 07:51:13 +00:00
Jake Turner 977adf5001 Opening DDS file better estimate size of mip-tail closes #3179
If a mip-tail exists estimate that it will be the same size as mip 0
2023-12-20 10:00:56 +00:00
baldurk 586ba368ce Fix incorrect stride when access chaining into vectors within matrices
* This would only break for row-major matrices where the index needs to pull out
  a column.
2023-12-19 17:07:26 +00:00
Jake Turner 5eb3778b9d Basic test for shader debugger out of bounds matrix lookup 2023-12-19 16:09:31 +00:00
Jake Turner a7a881c20d SPIR-V debugger: Fix error message parameters not matching format
Fixes a potential crash when displaying an error message about invalid scalar index on a matrix
2023-12-19 16:09:31 +00:00
Steve Karolewics f20c596a69 Fix D3D12 pixel history for events that do not have a pixel shader 2023-12-18 07:54:59 +00:00
Steve Karolewics 28ce7ac51c Add test for D3D12 pixel history 2023-12-18 07:51:51 +00:00
baldurk ca5783e712 Compile fix for bool cast 2023-12-14 15:31:29 +00:00
baldurk ec78d567dd Don't create illegal combinations of graphics pipelines for mesh renders 2023-12-14 15:19:40 +00:00
baldurk 3da12b266e Account for OpLine/OpNoLine when skipping past SPIR-V function variables 2023-12-14 15:10:34 +00:00
baldurk 2a255d8a8b Fix vulkan pixel history to handle mesh shaders 2023-12-14 13:38:49 +00:00
baldurk 8759551943 Use the right specialisation data to pack in task shader output BDA 2023-12-14 13:16:24 +00:00
baldurk 6dcbafe329 Fix calculation of scalar offsets for task payload in SPIR-V reflection 2023-12-14 13:16:24 +00:00
Jake Turner 3766b9fa2f D3D11 Discard bug fix for Dynamic, Staging Buffers
Staging buffers can't use D3D11_MAP_WRITE_DISCARD.
The memory copy loop was counting in bytes but copying in 4-byte chunks leading to memory trampling.
2023-12-14 12:28:07 +00:00
Jake Turner d33ad62a26 D3D11 Test for discard on Staging and Dyanmic Buffers 2023-12-14 12:28:07 +00:00
Jake Turner 6b74634ba0 D3D12 Pixel History use PS instead of VS to detect DXIL
Fixes crash when doing pixel history on DispatchMesh drawcall
2023-12-14 12:28:07 +00:00
Jake Turner d9db44fd32 SPIR-V Debugger: Make Op::Unreachable terminate debug session 2023-12-13 10:24:47 +00:00
Jake Turner 5bfb844643 SPIR-V OpSwitch support for 64-bit selectors #3140 2023-12-13 10:24:47 +00:00
Jake Turner 18a28eb8dc SPIR-V shader debug OpSwitch tests
Test with selector and literal of different types "int", "uint", "long", "ulong"
2023-12-13 10:24:47 +00:00
Jake Turner cb9dc1389f Vk Depth overlay always clear stencil to zero 2023-12-13 10:24:31 +00:00
Jake Turner 466cc148cf VK Overlay Test clear a stencil rectangle to one 2023-12-13 10:24:31 +00:00
Jovan Ristic bff9234a52 Fix pixel history on unknown format descriptors. 2023-12-13 10:07:01 +00:00
Jake Turner c454412e1e Remove unused code in D3D12 overlay 2023-12-12 14:16:06 +00:00
Jake Turner 2d51d890e4 Vk Depth overlay pipeline creation improvements
Use framebufferDepthSampleCounts instead of framebufferColorSampleCounts
Query for format support before trying to create a RenderPass using the format
2023-12-12 14:16:06 +00:00
Jake Turner d172b39309 Changed D3D12_PixelHistory to be a developer config option 2023-12-12 14:16:06 +00:00
Jake Turner a5bb368bf3 D3D11 Depth overlay remove reference on constant buffer 2023-12-12 14:16:06 +00:00
Jake Turner b26f961644 D3D12 Depth overlay always clear stencil to zero 2023-12-12 14:16:06 +00:00
Jake Turner 33da4ed278 GL Overlay Test clear a stencil rectangle to one 2023-12-12 14:16:06 +00:00
Jake Turner 60cb36e4c5 D3D11 Overlay Test clear a stencil rectangle to one 2023-12-12 14:16:06 +00:00
Jake Turner c09d5a81b6 D3D12 Overlay Test clear a stencil rectangle to one 2023-12-12 14:16:06 +00:00