Commit Graph

10704 Commits

Author SHA1 Message Date
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
baldurk a7b4fe9167 Don't clamp length against buffer size after applying offset
* If we have a given view length that fits in the buffer, we shouldn't apply the
  offset before clamping. Instead we apply the offset on the buffer length if
  that's what we're using as our size.
2020-04-27 13:03:47 +01:00