Commit Graph

12853 Commits

Author SHA1 Message Date
baldurk f0428e6801 Add extra protection for valid queries to GetBufferData 2022-02-08 18:07:39 +00:00
baldurk afb82971dd Create separate pipeline & render pass for sRGB 8-bit remapping
* Normally we only need one remap per bitness and per type, but for 8-bit
  float/unorm we need to distinguish between plain unorm and sRGB unorm.
2022-02-08 18:07:39 +00:00
baldurk 46fb3ac666 Fix push constant range not using full stage flags
* The spec requires that we pass all stage flags for the declared range, even if
  we're only binding for compute.
2022-02-08 18:07:39 +00:00
baldurk 2312fa45da Fix some missing sType's on input structures 2022-02-08 18:07:39 +00:00
baldurk 5a62e27ec3 Fix a couple of technical validation failures 2022-02-08 18:07:39 +00:00
baldurk 2c98999a80 Fix mistaken flag set 2022-02-08 18:07:39 +00:00
baldurk b38f8b8378 Fix some cases where buffer memory requirements were assumed to be tight
* It's possible for a buffer to require more memory than its size (e.g. up to
  some alignment)
2022-02-08 18:07:39 +00:00
baldurk a8e7b64a31 Don't set events on replay, they may be device-only
* We also don't use the 'real' events for our handling anyway, so their
  set/reset status doesn't matter.
2022-02-08 18:07:38 +00:00
baldurk 8f4f7f571f KHR_synchronization2 is only enabled if the feature is enabled 2022-02-08 18:07:38 +00:00
baldurk b7e13e7d6f Update demos vulkan headers to 1.3 2022-02-08 18:07:38 +00:00
baldurk f37516bfc3 Use depth image specifically for depth-compare tests in shader debug zoo
* The spec doesn't guarantee that non-depth formats support comparisons like
  this.
2022-02-08 18:07:38 +00:00
baldurk 9a75846343 Only provide mutable format list when needed 2022-02-08 18:07:38 +00:00
baldurk a675f0050e Downgrade error to warning for compute path on missing spec constants 2022-02-08 18:07:38 +00:00
baldurk b78f4b5624 Flush some commands before object destruction 2022-02-08 18:07:38 +00:00
baldurk 597644435d Name some internal image and imageview objects for vulkan 2022-02-08 18:07:38 +00:00
baldurk c853dbcd10 Fix version check on vulkan not storing instance version properly 2022-02-08 18:07:38 +00:00
baldurk 7a0a8fa855 explicitly disable shading rate attachment when using old RP create 2022-02-08 18:07:38 +00:00
Steve Karolewics f552b1b4e9 Prevent focus reset when typing in the compute debug selector 2022-02-08 16:27:55 +00:00
follower 3471e64c8f Fix incorrect link for include-bin credit.
The current link appears to be an accidental duplication of the URL from the project listed immediately above.

This commit appears to be the origin of the duplicated URL: https://github.com/baldurk/renderdoc/commit/b5c7944038572eebffde32e1279c45c4f6d84153#diff-4673a3aba01813b595de187a7a6e9e63a3491d55821606fecd9f13a10c188a1dL98

Note: This "correct" link is to the original repository URL which appears to no longer exist.

For reference:

 * Original commit with the inclusion of `include-bin`: https://github.com/baldurk/renderdoc/commit/864fdbe179b6c1f20cae7c753fb018bec74b5738

 * Original issue which lead to the inclusion: https://github.com/baldurk/renderdoc/issues/314#issuecomment-238204556
2022-02-05 18:53:25 +00:00
Remi Palandri 5f61bf1510 erase all liveIDs when replacing resources 2022-02-04 20:04:32 +00:00
Steve Karolewics c6c93efd22 Fix shader debugging display of high-level boolean variables 2022-02-04 20:04:19 +00:00
baldurk 6ab4c1ad74 Add support for VK_KHR_fragment_shading_rate. Closes #2426 2022-02-04 16:45:15 +00:00
baldurk e58cb9a73b Fix stepping over/into on instructions in the same function 2022-02-04 16:45:15 +00:00
baldurk 7266dd8960 Read inline information for vulkan debug and use it to get callstack 2022-02-04 16:45:15 +00:00
baldurk 7f130077da When source debugging, skip non-mapped instructions
* We entirely skip over any instructions that don't have a source mapping. These
  are assumed to be filler instructions or others that don't correspond usefully
  to anything in the source.
2022-02-04 16:45:15 +00:00
baldurk 309a2aaded Add variable debug variables when we have debug info
* We don't want to wait until the first store to do this, since the source
  variables are added at the appropriate scope - even before the first store.
2022-02-04 16:45:15 +00:00
baldurk 2f0be387c4 Use DebugSource and DebugLine/DebugNoLine for line-number info 2022-02-04 16:45:15 +00:00
baldurk 70200ed0a8 Account for locals within loops coming from later mappings
* We invert the mapping so that instead of each local having its list of
  locations and picking the latest at any point, we track the "current" and
  update the mappings with any changes we come across at each step.
2022-02-04 16:45:15 +00:00
baldurk 3b38d2989d Include constants in shader changes when debug info references them 2022-02-04 16:45:15 +00:00
baldurk 1033403d57 Explicitly sort source vars by last write to underlying ID
* This system works both for debug info local variables and auto-generated named
  variables
2022-02-04 16:45:14 +00:00
baldurk b562c462c5 Apply vulkan debug information for source variable mappings 2022-02-04 16:45:14 +00:00
baldurk e6cb5ca88e Store extended vulkan debug information 2022-02-04 16:45:14 +00:00
baldurk a12a320f18 Skip debug info OpExtInst during debugging 2022-02-04 16:45:14 +00:00
baldurk c90a6a72fc Process source and global variable information from vulkan debug info 2022-02-04 16:45:14 +00:00
baldurk 0dbd579c10 Prefer source debugging when we find vulkan debug info 2022-02-04 16:45:14 +00:00
baldurk 401e995748 Don't disassemble most vulkan debug info SPIR-V opcodes
* These are metadata for us, not for general consumption in a user-facing
  disassembly
2022-02-04 16:45:14 +00:00
baldurk 4d0aba7725 Include non-semantic debuginfo grammar 2022-02-04 16:45:14 +00:00
baldurk 68401caea3 Generate larger staging buffer for vulkan discard patterns
* The pattern buffer is 64x8 but doing copies to each target location can cause
  issues on very large textures. Instead we generate a 256x256 buffer with
  repetitions on load (which is still only ~256-512kB), and copy from that. We
  can still do truncated copies so we don't need a smaller buffer, and this
  greatly reduces the number of buffer copies issued.
2022-02-04 16:45:14 +00:00
Steve Karolewics f082d53c92 Fix D3D12 shader debugging with root sig deny flags
The root signature can specify deny flags for shader types. If this
is the case for a shader we're debugging, we need to ensure that
the flags are cleared to allow sample/gather instructions to work.
2022-02-04 12:38:27 +00:00
Leonard Tsai f7c34cdb0c Support VK_KHR_depth_stencil_resolve attachment in pipeline state view
Depth stencil resolve attachments were not being serialized and exposed in the pipeline state view. This change serializes the attachment id for the depth-stencil resolve attachment so that it can show up in the pipeline state view.

Update name of depth/stencil in pipeline viewer

Fix clang formatting

Update struct type
2022-02-03 18:49:10 +00:00
baldurk 76e273cbd4 Fix another clang warning 2022-02-03 11:13:16 +00:00
baldurk 4e8895983b Fix clang warning about unused break 2022-02-02 17:00:26 +00:00
baldurk e06a01d03d Fix compilation on linux 2022-02-02 16:13:25 +00:00
baldurk fdda8be9c6 Allow watch variables to specify a color-swatch with ,c. Closes #2475 2022-02-02 15:00:44 +00:00
baldurk d844d3af39 Fix missing stencil store op in discard zoo test 2022-02-02 15:00:44 +00:00
baldurk e4fd52c367 Fix generation of NaNs in vulkan shader debug zoo test 2022-02-02 15:00:44 +00:00
baldurk e42b0ff2ca Refactor ShaderVariable use and non-32-bit precision. Closes #2466 2022-02-02 15:00:43 +00:00
Remi Palandri 4b748c6368 fixing valid issues 2022-02-02 11:04:42 +00:00
baldurk 4bf2e00ba5 Switch custom prefixes from defines to static constants 2022-02-01 01:07:25 +00:00
baldurk f40e1fe951 Fix docstring references to ShaderSourcePrefix 2022-02-01 00:09:35 +00:00