Commit Graph

10705 Commits

Author SHA1 Message Date
baldurk a28f77ab7d Support debugging fetching input attachments 2020-04-30 18:15:29 +01:00
baldurk 4695259078 Subpass inputs are considered read-only 2020-04-30 18:15:29 +01:00
baldurk e2fce8cad1 Fix crash if accessed resource is unbound 2020-04-30 18:15:29 +01:00
baldurk 1a057303a2 Don't add Storage to type name for subpass inputs 2020-04-30 18:15:29 +01:00
baldurk 4b3ef6c6f4 Add block decoration when using StorageBuffer storage class 2020-04-30 18:15:28 +01:00
baldurk f6ec10659d Tighten up comparisons in Resource_Lifetimes tests 2020-04-30 18:15:28 +01:00
baldurk fc3980b610 Fix GL_Vertex_Attr_Zoo test 2020-04-30 18:15:28 +01:00
baldurk 0b3b026fdb Fix VK_CBuffer_Zoo test 2020-04-30 18:15:28 +01:00
baldurk 9c0423506d Don't test timeline semaphore if it's not supported 2020-04-30 18:15:28 +01:00
baldurk fb72ecc97d Add fallback to disable descriptor-heavy parts of shader debug test 2020-04-30 18:15:28 +01:00
baldurk 20e17a3f20 Add a configurable timeout when running demos program 2020-04-30 18:15:28 +01:00
baldurk 94be1b8ce8 Fill shader debug fetch descriptors with dummy contents
* We need to do this to comply with static use, which is considered *before*
  specialization constants have been applied, meaning when we run our gather all
  variants must be valid :(.
2020-04-30 18:15:28 +01:00
baldurk 48451793bb Enable imageCubeArray feature if possible, fallback if not available 2020-04-30 18:12:34 +01:00
baldurk 4bd11e1111 Ensure we have enough descriptors in the pool for debug descriptors 2020-04-30 18:12:34 +01:00
baldurk 408cb10053 Don't create degenerate access chain to load global variable
* This seems like it's legal, but let's not do it anyway just in case.
2020-04-30 18:12:34 +01:00
baldurk 811d6323b0 Fail early if required extension/feature isn't available 2020-04-30 18:12:34 +01:00
Julian Meder 7a6326818c Add support for ID3D12Heap, ID3D12DeviceChild in dx12 OpenSharedHandle
Added support for ID3D12Heap and general ID3D12DeviceChild to ID3D12Device::OpenSharedHandle hook.
2020-04-30 18:12:22 +01:00
baldurk e8f3c547be Add fallback to remove queue priorities if device creation fails 2020-04-29 22:12:12 +01:00
baldurk 54abdc3d14 Fix racy cross-thread access to target control connection. Closes #1857 2020-04-29 18:48:51 +01:00
baldurk c02675bcd0 Fix incorrect reflection for 1,1,1 group size compute shaders 2020-04-29 18:48:51 +01:00
baldurk 26aa7fbb1e Fix handling of pointers into matrix columns 2020-04-29 18:48:51 +01:00
baldurk 2865fe101d Deduplicate resource accesses by binding not by name
* For D3D this should be equivalent since name == bindpoint, but for SPIR-V this
  prevents the same binding being loaded into multiple SSA variables from being
  added every time.
2020-04-29 18:48:51 +01:00
baldurk fe882fe872 Default to debug variables panel if there's no high-level debug info 2020-04-29 18:48:50 +01:00
baldurk 1da60805e0 Allow source variable mappings to point to the root of a complex type
* For vulkan debugging where high-level variables are not scattered amongst
  vectors, there's no point in having the whole tree expanded for source mapping
  struct-to-struct or array-to-array.
2020-04-29 18:48:50 +01:00
baldurk ff07c88a65 Simplify tracking & allocation of pointers 2020-04-29 18:48:50 +01:00
baldurk 75befa30d8 Support workgroup private variables in debugging
* We don't simulate other threads so this will be similar to groupshared on
  D3D11 which doesn't have accurate contents.
2020-04-29 18:48:50 +01:00
baldurk 2eaeb96799 Add UI to vulkan pipeline state viewer to allow compute debugging 2020-04-29 18:48:50 +01:00
Aliya Pazylbekova 2cb546686b Vk Pixel History: multi sampled colour
Colour only, depth/stencil copy not supported.
This means that we only report pre-mod and post-mod colour values for
events. Since stencil copy is not supported, number of fragments is
not reported, and shader output is not queried.
2020-04-29 18:48:37 +01:00
baldurk ccab431cd1 Re-enable some warnings in glslang that have been fixed 2020-04-28 18:15:34 +01:00
baldurk b0aaae0a8a Update glslang to 8.13.3743. Closes #1851 2020-04-28 18:15:34 +01:00
baldurk 7ef7afc6c6 Fix warning with clang 10 2020-04-28 18:15:34 +01:00
baldurk 63c1ecd89c Handle vertexOffset properly in mesh decode example. Closes #1852 2020-04-28 18:15:34 +01:00
baldurk 7c265efe2e Configure ShaderConstant descriptor for vertex inputs 2020-04-28 18:15:33 +01:00
baldurk d8835126a5 Implement image & buffer atomic operations 2020-04-28 18:15:33 +01:00
baldurk 80e7e27a9e Fix data type access when accessing scalars in vectors in SSBOs 2020-04-28 18:15:33 +01:00
baldurk 50359b03c9 Be more specific about the 'invalid' bindpoint we want to ignore 2020-04-28 18:15:33 +01:00
baldurk c3c77a469d When resetting replay, don't replay draw multiple times 2020-04-28 18:15:33 +01:00
baldurk 638c27d1b7 Check that derivatives come back as valid
* We check that derivatives are valid by doing ddx() on the pixel co-ordinate
  which should return 1.0. If it doesn't we can't trust the results and it will
  cause problems later. This is a known bug on the current public nvidia release
  branch which is fixed on the developer branch. Once it's fixed on public we
  can have a more user-friendly version number check.
2020-04-28 18:15:33 +01:00
baldurk 7d233f074c Don't launch pixel history on failure if the feature is not supported 2020-04-28 18:15:33 +01:00
baldurk 84a804f95d Set byte strides for error case of buffer formatter 2020-04-28 18:15:33 +01:00
Steve Karolewics ade2325623 Cache resources fetched from the pipe state in the texture viewer 2020-04-28 18:15:20 +01:00
Steve Karolewics 8e988f9045 Eliminate removeIf from barriers that slowed down opening captures 2020-04-28 18:15:20 +01:00
Steve Karolewics f29fe5864e Make RichResourceTextMouseEvent only respond to left button clicks
Previously it prevented context menus from working when activated over
a rich resource text field.
2020-04-27 18:16:46 +01:00
Steve Karolewics 08d1189d99 Give ShaderViewer its own copy of bindpoint mappings
Previously this data was a reference to the current pipeline state, so
when the selected event changed, the ShaderViewer's bindpoint mappings
would be inaccurate.
2020-04-27 18:16:46 +01:00
Steve Karolewics 2c4f2a57a8 Add resource tracking to DXBC shader debugging
When a resource is accessed, it is now tracked by the debug step. The
shader viewer has a new panel to display resources accessed up to the
current step, with context menus to go to previous/next access of a
specific resource.
2020-04-27 18:16:46 +01:00
baldurk 745b65b3d2 Fix sampling from cube textures 2020-04-27 17:03:12 +01:00
baldurk 19bb332207 Fix bug in disassembly and debugging of vectorshuffle
* Not all vectors are four components, the indices are relative to the number of
  components each vector has, not always 0-3 and 5-7
2020-04-27 16:19:38 +01:00
baldurk 67c3f4fe25 Add support for accessing arrays of resources 2020-04-27 15:41:12 +01:00
baldurk 89df575d21 Remove decorations on removed IDs 2020-04-27 15:09:55 +01:00
baldurk 133b8a41b9 Fix handling of column-major matrices in buffer viewer. Closes #1848 2020-04-27 13:46:58 +01:00