Commit Graph

773 Commits

Author SHA1 Message Date
thisisjimmyfb f64cba8e91 Add test to show drawcall count is incorrect 2021-06-26 09:28:42 +01:00
baldurk 1ed4b561e6 Fix discard patterns to work correctly with multisampled UINT textures 2021-05-27 14:18:05 +01:00
baldurk 732ccb2d89 Fix D3D12_AMD_Shader_Extensions test for DXIL support
* We can't build with -O0, it has to be at least -O1 for DXIL. We also need -Ges
  / strictness on both builds.
2021-05-10 17:02:49 +01:00
baldurk efd2a50a3a Use python datetime for calculating durations, not time.time() 2021-05-04 14:12:03 +01:00
baldurk f530392bc1 Check that destroying a command allocator mid-capture works OK 2021-04-30 16:58:55 +01:00
baldurk 2af11c5395 Add test of AMD extensions in D3D12 2021-04-30 16:41:17 +01:00
baldurk 55a6d8092b Test that memory bound via vkBindBufferMemroy2 is properly captured 2021-04-30 13:44:52 +01:00
baldurk 9d6fe09b62 Test vulkan clear-before-draw overlay works when bindless feedback runs
* The first time a draw is selected bindless feedback runs, ensure the clear-
  before-draw overlay works even then. This is a little bit of a hack but it
  tests for a known issue.
2021-04-30 13:20:45 +01:00
baldurk f085d1682f Test stream-created PSOs create correctly
* Where possible we test empty AS/MS to ensure they're ignored, though I don't
  run any windows versions that support this at the runtime level.
2021-04-30 12:41:22 +01:00
baldurk cd6b8ade85 Add specialization constants to tests to ensure they are preserved
* These canary values must be propagated correctly to derived pipelines (made
  with patched shaders etc) or else the shaders disable themselves/misbehave,
  which invalidates the test. That way if the test passes we know the
  specialization constants were properly propagated.
2021-04-30 11:11:18 +01:00
baldurk 9c29ae6393 Check for SRV/UAV typed access to 16-bit types
* This is possible on D3D11 but only with certain cap bits, it's simpler to test
  on D3D12 and the DXBC debugger will go through the same path for both.
2021-04-29 16:50:12 +01:00
baldurk 7ff6300843 Add test of D3D12 VRS features 2021-04-29 16:18:06 +01:00
baldurk 26aa09c665 Refactor D3D12 tests to check for options once in Prepare 2021-04-29 12:52:28 +01:00
baldurk aac9e762bc Test that empty execute indirects don't crash 2021-04-29 11:26:14 +01:00
baldurk f9054ffdf4 Create image view on depth/stencil in test to simplify behaviour 2021-04-28 16:30:17 +01:00
baldurk 0c0d57cc70 Add names to VK_Pixel_History test images 2021-04-28 16:30:07 +01:00
baldurk 2da070ad55 Fix VK_CBuffer_Zoo test when inline data extension isn't supported 2021-04-23 19:07:30 +01:00
baldurk db21020000 Ensure that overlay tests don't crash if multiple UAVs use register 0 2021-04-16 14:23:20 +01:00
baldurk 477a1e927b Add VK_Robustness2 test to autotests and add push descriptor interaction 2021-04-16 14:19:30 +01:00
baldurk 47e13a30d4 Add test of GL renderbuffer variants 2021-04-16 13:31:08 +01:00
baldurk 2720ff354a Test structured export/import of MSAA textures 2021-04-15 15:34:14 +01:00
baldurk 02e8e8fdf7 Patch imageless framebuffer image usage/formats to match image patching 2021-04-12 19:48:48 +01:00
Jake Turner add33d484c Modified find to work on Mac
Do basic find without regular expressions
Use grep -E to do the regular expression matching
Use awk to reconstruct an equivalent find -print0 output
2021-04-07 11:54:46 +01:00
Jake Turner aca59e3f55 Added *.m & *.mm file extensions 2021-04-07 11:54:46 +01:00
baldurk dc44d6c271 Make doubles vertex attribute test optional for radv missing support 2021-03-22 18:37:10 +00:00
baldurk 83f99b6e56 Fix compile errors in demos project in linux 2021-03-22 18:37:09 +00:00
baldurk 827a48fe57 Check sampler validity against immutable samplers on serialise 2021-03-15 14:39:21 +00:00
baldurk 7a8b4a4664 Fix compile and code style errors in GL_Simple_Triangle 2021-03-15 09:58:57 +00:00
Jake Turner 67e277717c Added test failure if fail to find the draw marker 2021-03-14 11:17:31 +00:00
Jake Turner 1985d126c7 Converted gl_simple_triangle test to OpenGL 4.1 2021-03-14 11:17:31 +00:00
Jake Turner 1e90d20185 Changed GL test default shaders to be version 410 2021-03-14 11:17:31 +00:00
baldurk 438d823c32 Add support for optional physical device features to vulkan tests 2021-03-02 17:08:47 +00:00
baldurk d6e88ae4fa Remove redundant callstack member in APIEvent
* We already link to the chunk index and the chunk metadata contains the
  callstack, there's no need for a duplicate copy when there may be many
  APIEvents in a capture
2021-02-24 13:52:07 +00:00
baldurk 30dd13feb8 Pull index byte width and topology out of drawcall state
* These are treated as state on most APIs, only GL treats it as a drawcall
  parameter.
2021-02-24 13:52:07 +00:00
baldurk 4a379408f9 Patch VkImageFormatListCreateInfo for MSAA textures
* Since we're using mutable format to cast them to UINT for copies, we need to
  ensure that the correct format is in the create info list.
2021-02-22 12:38:43 +00:00
Jake Turner baf0e3ea70 #error for unknown platform in demos project 2021-02-22 10:34:11 +00:00
Jake Turner f14130fc2d Wrap TEST_ASSERT with do...while(0)
Fix compile errors when doing
if (blah) TEST_ASSERT(cond, message)
2021-02-22 10:34:11 +00:00
Jake Turner 7ab0cac68b Fix C++11 error assign string literal to char*
error: ISO C++11 does not allow
      conversion from string literal to 'GLchar *' (aka 'char *') [-Werror,-Wwritable-strings]
2021-02-18 15:41:40 +00:00
Jake Turner eae38aad8a Added -Werror to demos project 2021-02-18 15:41:40 +00:00
Jake Turner b2b76486a5 Move format.cc from VULKAN_SRC to SRC
Support for building demos on a platform without Vulkan support
2021-02-18 15:41:40 +00:00
Jake Turner 0a7020b557 Fix minor typo checkou -> checkout 2021-02-18 15:41:40 +00:00
Jake Turner 2e47b58b18 Minor updates to demos cmake configuration
Ground work for cmake compilation of demos project on non Linux platform
2021-02-18 15:41:40 +00:00
Jake Turner 46f84675f8 Test compiler to decide to add -std=c++11 option
Copied from renderdoc cmake configuration
2021-02-18 15:41:40 +00:00
Jake Turner b7eebf9f68 Compile error fix for Apple clang version 12.0.0
candidate function not viable: 'this'
      argument has type 'const TestMetadata', but method is not marked const
  bool operator<(const TestMetadata &o)
2021-02-18 15:41:40 +00:00
Jake Turner 0fb11c6c0e Extra information for building demos using cmake
Include example cmake and make commands similar to the instructions for renderdoc compiling.
2021-02-18 15:41:40 +00:00
baldurk 5cb9b90f5f Implement support for VK_KHR_synchronization2
* For the most part we implement this as a thin pass-through layer. Where we
  care about things (image barriers for layout transitions and queue
  submissions) we do two different things:
  - For image barriers, we "downcast" to plain VkImageMemoryBarrier. Currently
    the only thing that's unique to VkImageMemoryBarrier2KHR is extra access
    flags and pipeline stages, which we don't care about. This keeps a lot of
    code from having to either handle two paths or handle the new path and then
    do lots of conversions back to VkImageMemoryBarrier when running on older
    drivers.
  - For queue submissions we do the opposite. We promote old VkSubmitInfo to
    VkSubmitInfo2KHR and process that in a common function, then if necessary
    we decay back to VkSubmitInfo before sending to the driver.
2021-02-17 15:03:52 +00:00
baldurk cf23c35d60 Update vulkan headers to 1.1.170
* Note the sync2 structs aren't properly sorted in vk_next_chains.cpp because
  I'm about to implement it and I'm too lazy to insert them in the right places
  only to go find them all again to remove them.
2021-02-17 14:04:57 +00:00
baldurk 4b65d7f841 Add explicit /m to msbuild.exe invocations
* Without this by default msbuild doesn't build in parallel.
2021-02-14 13:10:25 +00:00
baldurk 08201d3645 Use v142 VC++ runtime merge modules
* These are optional installs in the new visual studio installer and must be
  specifically selected.
2021-02-09 16:30:04 +00:00
baldurk 7e6a785055 Add test of vulkan dedicated allocations 2021-02-01 14:43:43 +00:00