Commit Graph

698 Commits

Author SHA1 Message Date
baldurk a3a0aae660 Handle fixed index lookups in array resources 2021-07-19 16:51:50 +01:00
baldurk abe0787bb2 Add test of D3D12 bindless feedback 2021-07-15 16:41:23 +01:00
baldurk 7f13429d0e Log in tests when using linked shaderc 2021-07-13 17:45:59 +01:00
baldurk 24af06ac3e Fix validation warnings in VK_Synchronization_2 test 2021-07-13 17:45:49 +01:00
Jake Turner 59ca2811ef Change glGetInternalformativ bufSize values
Specify the maximum count of parameters instead of number of bytes
i.e.

GLint iscol;

GL.glGetInternalformativ(target, fmt, eGL_DEPTH_COMPONENTS, sizeof(GLint), &isdepth);
becomes
GL.glGetInternalformativ(target, fmt, eGL_DEPTH_COMPONENTS, 1, &isdepth);

From GL references pages: https://www.khronos.org/registry/OpenGL-Refpages/gl4/html/glGetInternalformat.xhtml

bufSize

Specifies the maximum number of integers of the specified width that may be written to params by the function.
2021-07-12 20:36:00 +01:00
baldurk 81b4d3d804 Add public domain md5 library and implement modified DXBC container hash
* This allows us to disabled any requirement for "experimental shaders".
2021-07-07 19:18:32 +01:00
Jake Turner fc08cb17f9 Fix VS2019 compiler warnings in demos solution 2021-07-07 09:59:22 +01:00
Jake Turner b3f57d1427 Fix Vulkan Validation Layer error when running VK_Parameter_Zoo
refpushtempl desscriptor update template was not deleted before shutdown
2021-07-07 09:59:22 +01:00
baldurk 23fe6ae67f Remove SM5.0 test for D3D12 AMD shader extensions
* This seems not to work and is not officially supported so there's little value
  in testing it.
2021-07-05 14:20:48 +01:00
baldurk a1b5f01159 Fix tests with references to removed properties 2021-07-05 14:20:48 +01:00
baldurk 979f5244e2 Make demos timeout more generous for leak check tests
* It's fine as-is in release, but in development builds it can take almost a
  minute to reach that frame and capture.
2021-07-05 14:20:48 +01:00
baldurk 634a8c381a Update test scripts to latest APIs and behaviour changes 2021-07-01 15:15:05 +01:00
baldurk 7149302680 Rename 'draw' or 'drawcall' to action
* There's not a good accepted terminology for this kind of event, and for
  historical reasons 'drawcall' has been the accepted term, even though
  that can be quite confusing when a dispatch or a copy is a 'drawcall'.
* This is particularly highlighted by the event browser filters where
  $draw() includes draws and dispatches, but $dispatch() only includes
  dispatches, it's hard to intuitively understand why $draw() matches all
  of these calls.
* As a result we've defined the term 'action' to cover these types of
  events in the same way that we defined 'event' in the first place to
  mean a single atomic API call.
2021-07-01 15:15:05 +01:00
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
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