74 Commits

Author SHA1 Message Date
baldurk 72880a8f07 Print how far through the Iter_Test we are at each step 2019-04-24 13:48:48 +01:00
baldurk 93d23ebac5 Add helper for creating D3D12 PSO with MSAA in testbed program 2019-04-24 13:10:00 +01:00
baldurk 77269327ef Add EXT_descriptor_indexing test
* This is a simple test using descriptor indexing in fragment and compute
  shaders, with sampled images and storage buffers, including passing bindless
  arrays through functions to be sure that's tracked properly.
* There's also a define to turn on a reasonably bad case (though not
  worst/extreme) of # of descriptors - roughly 5 million descriptors allocated
  in total, with roughly 1 million bound at draw time.
2019-04-05 09:19:23 +01:00
baldurk 2c583b66f6 Add initial VK_EXT_buffer_address capture/replay implementation
* The extension is not yet whitelisted as there is no solution currently for
  feedback on used bindings or handling of pointers in data structures within
  the UI or shader reflection.
2019-04-05 09:19:22 +01:00
baldurk ccd5ba218e Explicitly shutdown only the running test, instead of using destructors
* The tests are global objects so there's a potential ordering issue of
  destroying these tests after RenderDoc's global destructors have run.
2019-04-04 15:50:34 +01:00
baldurk 043fcda299 Fix check for external glslc 2019-04-04 15:50:34 +01:00
baldurk 3cc2c37149 Don't crash on linux if getenv() returns NULL for unknown variable 2019-04-04 15:50:34 +01:00
baldurk d351ac9ea4 Update to 1.1.105 vulkan headers 2019-04-04 15:50:24 +01:00
baldurk 4c3a68d866 Add a couple of setName overloads in VulkanGraphicsTest 2019-04-01 15:23:27 +01:00
baldurk 1cada82d2f Use VK_EXT_debug_utils in testbed program 2019-04-01 15:23:27 +01:00
baldurk 7cef20fde5 Add missing demo project tests to CMakeLists.txt 2019-03-29 17:48:15 +00:00
baldurk d677b594b1 Fix D3D11_Binding_Hazards test 2019-03-25 17:48:44 +00:00
baldurk 143c75f5a0 Update volk to 1.1.101 2019-03-05 16:03:20 +00:00
baldurk 5484bcbf1a Don't error if a non-existant file is passed via TestFailureException 2019-02-15 18:17:20 +00:00
baldurk 7ef8ed0a7a Drop the requirement for PIL in the tests, use pypng drop-in replacement
* This means we no longer need to import PIL from somewhere else if we run via
  renderdoccmd test functional
2019-02-15 18:17:06 +00:00
baldurk c72e79960e Allow launching demos program with no arguments to see test selection 2019-02-15 14:55:30 +00:00
baldurk 634040d4b5 Change working directory to script location for running functional tests 2019-02-14 15:15:45 +00:00
baldurk ce991e421a Drop psutil requirement in functional tests, fetch memory usage directly 2019-02-14 15:08:28 +00:00
baldurk bbc2f47fa8 Centralise generation of buffer format strings for struct buffers
* We also fix a number of issues that could cause incorrect formats to be
  generated.
* Test cases added for D3D11/GL/Vulkan to test different struct types. These
  aren't automated at the moment because most of the code they're testing is in
  the UI itself.
2019-02-13 18:50:56 +00:00
baldurk 166bd285ae Add help output when running demos program 2019-02-13 18:50:56 +00:00
baldurk 28e0e17d16 Enable scalar block layout feature in VK_Adv_CBuffer_Zoo 2019-02-13 18:50:56 +00:00
baldurk 014619eaf9 Add D3D11_RESOURCE_MISC_SHARED in GL/DX interop tests
* Necessary for it to work correctly on AMD
2019-02-13 18:50:55 +00:00
baldurk be67e91cc7 Add testing of saturate on NaNs in D3D shader debug 2019-02-07 15:23:06 +00:00
baldurk fbb6b23b23 Support advanced cbuffer layouts
* This includes 8/16/64-bit integers, 16-bit/64-bit floats, and scalar block
  packing
2019-02-07 15:23:06 +00:00
baldurk 134cdfd09b Add tests to CBuffer Zoos to test alternate uniform sources on APIs
* Vulkan: Specialization constants
* OpenGL: Bare uniforms (not in a UBO)
* D3D12: Root signature constants
2019-02-07 15:23:06 +00:00
baldurk 351c75e006 Fix some cases handling arrays of matrices
* We also pick the output pixel in the CBuffer_Zoo tests to ensure the API
  agrees with our interpretation of the data.
* Follow-up commit will tidy D3D cbuffer code that needs it.
2019-02-07 15:23:05 +00:00
baldurk 6d07e1c42e Add support for VK_EXT_discard_rectangles 2019-02-05 18:40:31 +00:00
baldurk 354b37be56 Add support for VK_EXT_sample_locations 2019-02-05 18:40:31 +00:00
baldurk cb9fc1dc4f Update vulkan headers in demos project 2019-02-05 18:40:31 +00:00
baldurk 73a5357419 Fix handling of primitive restart with a vertex offset 2019-02-04 18:06:09 +00:00
baldurk 73063703e6 Inherit indirect copies from secondary to primary cmdbufs. Closes #1251
* Updated VK_Indirect test to run everything in secondary command buffer as
  well.
2019-02-01 18:32:14 +00:00
baldurk 86ff87863e Update copyright years to 2019 2019-02-01 18:32:13 +00:00
baldurk 4bded8be29 Add missing GL_DYNAMIC_STORAGE_BIT specifiers in GL_Buffer_Updates test 2019-01-24 13:21:03 +00:00
baldurk f2253404f7 Add test that verifies postvs data is correct with separable GS shaders 2019-01-22 16:56:04 +00:00
baldurk 0cee61558a Mention the index when some PostVS data doesn't match ref data in test 2019-01-22 16:55:39 +00:00
baldurk 5d9d77f361 Expand GL buffer updates test to check various combinations of updates 2019-01-17 11:50:09 +00:00
baldurk 07dbadc0bc Remove unneeded common v2f code 2019-01-16 16:49:08 +00:00
baldurk 3a064eda7b Fix GL_Mip_Gen_RT test 2019-01-16 16:48:10 +00:00
baldurk 145f4bdb15 Handle GL applications changing BASE_LEVEL / MAX_LEVEL dynamically
* This is the only way in GL to do rendering from one mip to another. We handle
  it and display the whole texture even if it's temporarily constricted, and
  display the mip state in the pipeline viewer.
* If the mip state is constricted at the start of the frame capture, only mips
  0..MAX will be visible at all and other mips will be assumed to not be valid.
2019-01-14 18:02:44 +00:00
baldurk 6508bffcda Update vulkan headers to 1.1.97 2019-01-14 16:03:02 +00:00
baldurk c34c57fe5c Initialise latest renderdoc API in demos project
* We initialise both 1.0.0 for maximum compatibility, and the latest version for
  maximum functionality.
* It's currently unused anyway
2019-01-08 11:38:22 +00:00
baldurk 24032c0039 Update demos project to latest in-application header 2019-01-08 11:36:14 +00:00
baldurk 8c946c67e0 Fix memory leak in D3D12 tests, sync GPU and reset allocator each frame 2019-01-08 11:29:28 +00:00
baldurk f543f02998 Check RDC export/import in all simple tri tests, but *only* in those 2019-01-03 12:22:29 +00:00
baldurk 2237c241ff Fix incorrectly named methods in ResourceFormat
* We try to maintain at least an internally consistent naming scheme for the
  python/public interface, even if it doesn't match python naming schemes.
2019-01-03 12:22:29 +00:00
baldurk c16371d779 Add alignment helpers 2018-12-19 15:57:13 +00:00
baldurk b08fb8c9b5 Allow specifying the pNext struct passed to vkCreateDevice 2018-12-19 15:57:12 +00:00
baldurk ad48f438b2 Update test demos project's vulkan headers to match main ones
* These should be updated in lockstep from here on.
2018-12-19 15:57:12 +00:00
baldurk bb9ff1ccb7 Adjust GL SPIR-V shader test demo to do opengl-unique things
* E.g. not specify a binding and let that be done at runtime, or global
  variables not in constant buffers.
2018-12-17 17:10:35 +00:00
baldurk 46b0dc6c6e Specify YCbCr conversion sampler when creating conversion views 2018-12-14 15:38:35 +00:00