Commit Graph

840 Commits

Author SHA1 Message Date
Jake Turner aef7fc698b Add header files to demos CMakeLists.txt
Helpful for source browsing when using an IDE project generated by CMake

Potential list of header files found using:

find util/test/demos -name '*.h' \! -path "*3rdparty*" \! -path "*official*"
2022-04-25 12:08:51 +01:00
baldurk da08c10c41 Update vulkan & SPIR-V headers to latest 2022-04-13 12:19:15 +01:00
Benoit Dumesnil 2ace1fe84d Add test of D3D12 bindless feedback for shadermodel 6.6. 2022-03-21 11:30:47 +00:00
Benoit Dumesnil e47450a43b Fix test of D3D12 bindless feedback.
Fix a typo in a comment in D3D12_Descriptor_Indexing.py.
Fix UAV using a typed buffer view instead of a structured buffer view.
Fix SetDescriptorHeaps being called before ClearUnorderedAccessViewUint
2022-03-21 11:30:47 +00:00
Benoit Dumesnil 29770ef762 Update D3D headers in test project to latest D3D12 headers 2022-03-21 11:30:47 +00:00
baldurk 345206b2b8 Fix validation error with inline uniform block writes 2022-03-17 18:10:05 +00:00
baldurk fcdea67879 Update copyright years to 2022 2022-02-17 17:38:32 +00:00
baldurk f573b55012 Fix broken call to BecomeRemoteServer 2022-02-16 13:14:58 +00:00
baldurk 745bff2eeb Fix tests not passing a window title 2022-02-11 11:52:36 +00:00
baldurk ec5c14dee8 Add support for multiple batched presents on vulkan. Closes #2492 2022-02-10 16:36:19 +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 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
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
baldurk 0d7dcabdac Clamp version for vulkan 1.3 drivers that don't support BDA cap/replay 2022-01-31 17:25:23 +00:00
baldurk d0563ebaea Fix array overrun in test 2022-01-10 12:51:37 +00:00
baldurk 22d4dc4574 Don't create temporary device if D3D12 is not supported 2021-11-26 10:59:22 +00:00
baldurk 8d9a618bd6 Fix possible compile error in VK_Load_Store_None test 2021-11-22 13:15:41 +00:00
baldurk 861f55b467 Test picking empty draws in mesh view 2021-11-19 12:26:06 +00:00
baldurk bd2659a6ab Increase number of captures on GL_Leak_Check test to match other APIs 2021-11-19 12:11:41 +00:00
baldurk 2498043374 Add test of standard counters 2021-11-19 11:56:36 +00:00
baldurk 8f51857c69 Test D3D12 placed resources keeping a reference on their heap 2021-11-19 11:22:53 +00:00
baldurk 0f4433f658 Add a test of multiple entry points in a SPIR-V module 2021-11-16 16:27:36 +00:00
baldurk 751c80af85 Don't use spec constant ID as offset for storage. Closes #2413
* This requires a linear search to get the offset for a constant by ID, but
  hopefully no-one will have so many constants that this becomes an issue.
2021-11-16 15:01:42 +00:00
baldurk 37fd59313b Add a test of vulkan shader debug printf 2021-11-15 16:14:00 +00:00
baldurk ff1fc1c20f Test handling of residency refcounting and placed resources on D3D12 2021-11-15 15:07:56 +00:00
baldurk 799f3a806b Add tests of multi-bind GL functions that take NULL arrays 2021-11-15 13:32:10 +00:00
baldurk f96a91a108 Show how to hardcode a single test in the demos project 2021-11-15 13:09:24 +00:00
baldurk 32fd5b5f18 Fix SDK detection on VS2022 where the windows SDK has no 64-bit reg key 2021-11-15 11:02:05 +00:00
baldurk 4d906c5007 Check that multiple D3D12 devices with different resources doesn't break 2021-11-11 15:54:47 +00:00
baldurk 3da6a89bfb Test reading from NULL vertex buffer at offset 0 with VK_EXT_robustness2 2021-11-11 15:36:56 +00:00
baldurk 77e11abf07 Test that mapping and unmapping a "persistent" buffer each frame works 2021-11-11 15:20:43 +00:00
baldurk eb96e8007c Fix validation error in VK_Shader_Debug_Zoo 2021-11-11 15:15:50 +00:00
baldurk d0d809f43e Add a test using ~0U for OpVectorShuffle inputs 2021-11-11 15:15:42 +00:00
baldurk 352821026e Add tests that frame 0 can be captured and contains correct events 2021-11-11 14:43:17 +00:00
baldurk bb3343786b Add support for VK_KHR_dynamic_rendering 2021-11-05 14:15:01 +00:00
baldurk 7a4e68959f Support VK_EXT_load_store_op_none & color_write_enable. Closes #2363
* These are added together because VK_EXT_load_store_op_none is easier to test
  in a realistic fashion using VK_EXT_color_write_enable
2021-10-22 14:48:58 +01:00
baldurk 56f87abcab Update vulkan & SPIR-V to latest
* Vulkan header 1.2.196
2021-10-21 14:25:44 +01:00
baldurk 3cec544508 Patch quad overdraw shaders on D3D12 to follow rules. Closes #2356
* This is a stupid requirement as the quad overdraw shader doesn't use any
  interpolators, but the D3D12 runtime complains and refuses to create a PSO
  unless the PS has a matching signature. This works as long as the position was
  the first output from the previous stage, but if it isn't the PSO fails to
  create.
* To fix this, we take the existing shader and patch it by grafting the output
  signature from the last stage over onto the input signature, and patching up
  where the position is.
2021-10-20 17:22:43 +01:00
baldurk 97dfda3c3c Fix use of GetCBufferVariableContents in tests 2021-10-18 10:20:08 +01:00
baldurk 62d6ffaec2 Enable DXIL bindless feedback test 2021-09-27 12:26:22 +01:00
baldurk bffeb08a86 Try to do a version check on installed VC redist. Refs #2359
* Unfortunately there isn't an easy registry key to check to see if the
  2015-2019 redist that we need is installed. Instead we need to check the
  major/minor version to see if it's at least 14.20.
* This is complicated by the fact that windows installer returns DWORD registry
  values with an extra # but provides no built-in way to strip it so it can be
  compared numerically. The solution we've used here is a custom vbscript
  action, but apparently they are problematic. Worst case I believe this will
  try to install the runtime when not necessary, which might require an
  unnecessary reboot. Or alternatively it may misdetect the runtime as installed
  but the large majority of people have a compatible redist so this isn't too
  bad either.
2021-09-17 13:20:46 +01:00
baldurk 33d36788a6 Always check mapped memory for changes if it has BDA buffers
* Normally we only check mapped memory when it's referenced during capture by
  some binding, but for BDA we don't have bindings so we have to conservatively
  check it every time.
2021-09-13 19:13:30 +01:00
baldurk 6659fae944 Don't use sudo in docker prepare script 2021-08-31 09:04:57 +01:00
baldurk 7d1cc7a6b8 Fix ubuntu docker build failing due to packages moving URLs 2021-08-31 08:54:34 +01:00
baldurk a76aa1dede Update RGA devices list to include RDNA2
* We also drop everything gfx804 to keep the device list from being too bloated,
  as well as AMD planning to remove support for these devices soon.
2021-08-18 20:12:07 +01:00
baldurk a490606012 Handle D3D12 CreateConstantBufferView with a NULL desc 2021-07-28 14:01:13 +01:00