Commit Graph
150 Commits
Author SHA1 Message Date
baldurk 16dace3d48 Fix tests running on 32-bit 2019-10-01 17:59:01 +01:00
baldurk aed3d5fe4f Add naming overload for VkSampler in tests 2019-09-30 16:30:40 +01:00
baldurk 812e601a88 Ignore sampler updates when descset has immutable samplers. Closes #1528 2019-09-23 16:48:04 +01:00
baldurk 40375a6d6e Ensure all values are used and unstripped in GL_Vertex_Attr_Zoo 2019-09-18 15:28:12 +01:00
baldurk 612963bb11 Fix GL shader editing shader to not use uninitialised data 2019-09-18 14:16:28 +01:00
baldurk f8221d858d Ensure we don't hide an invalid buffer value that truncates to green 2019-09-18 13:55:27 +01:00
baldurk f415ba00bf Add missing binding for cbuffer 2019-09-18 13:55:11 +01:00
baldurk 35fec3f29e Fix shutdown order for GL test context & window 2019-09-18 13:30:58 +01:00
baldurk 9a99696593 Explicitly request alpha channel for GL test backbuffer 2019-09-18 13:15:38 +01:00
baldurk a237200cef Fix NULL being included in marker in D3D12 test 2019-09-18 11:18:38 +01:00
baldurk 8060693188 Fix byte address buffer access in shader debugging 2019-09-17 14:08:48 +01:00
baldurk 6d282f90d9 rename TEST macro to un-confused visual assist
* Visual assist comes with a pre-defined interpretation of TEST() for
  googletest, which conflicts with ours. We can't seem to override it with a
  va_stdafx.h even
2019-09-17 12:40:00 +01:00
baldurk a6aa0ac5d0 Handle other ignored garbage substates in vulkan graphics PSO creation 2019-09-17 12:02:37 +01:00
baldurk f3220bd6fb Use more stable clear color for comparison
* We need to allow for off-by-one errors in our color comparisons
2019-09-16 18:50:01 +01:00
baldurk 5e32e92205 Remove grey-area glShaderSource calls
* These crash on AMD and it's still unclear if they are spec legal.
2019-09-16 18:40:43 +01:00
baldurk 01fb4fd793 Test overlay with negative viewport height from KHR_maintenance1 2019-09-13 17:33:48 +01:00
baldurk dff2583db3 Add tests for specific parameters 2019-09-13 17:33:48 +01:00
baldurk a2df78369c Add test of denormal flushing to D3D11 shader debug zoo 2019-09-13 17:33:48 +01:00
baldurk d71b15115c Add additional proteciton & testing of unbound images in vulkan 2019-09-13 17:33:48 +01:00
baldurk c9f13a657d Add test cases of shader editing on GL and Vulkan 2019-09-05 20:36:12 +01:00
baldurk 205ec0ecf8 Update misaligned dirty demo to have interesting data in all bytes 2019-09-04 18:40:43 +01:00
baldurk bae2ea3767 Add demo program that misaligns the dirty region of a buffer 2019-09-04 18:13:41 +01:00
baldurk c761f675c4 Add test that SPIR-V 1.3 shaders are disassembled, reflected, and edited 2019-09-04 14:33:13 +01:00
baldurk c9e668cdfc Create highest vulkan instance possible in tests, and save version 2019-09-04 13:17:11 +01:00
baldurk 061a376901 Fix D3D12 tests to run on D3D12On7 2019-08-29 10:20:38 +01:00
baldurk ab05d4cbc8 Fix OpenGL SPIR-V compilation using external glslc in tests 2019-08-28 18:07:56 +01:00
baldurk 07158ad24c Fix support for triangle fans on GL/Vulkan 2019-08-20 15:33:12 +01:00
baldurk 27dcb72b93 Update vulkan headers to 1.1.120 2019-08-20 15:33:12 +01:00
baldurk ee43d4377c Account for pipeline specialisation constants when reflecting shaders 2019-08-16 17:38:35 +01:00
baldurk ef269e2b92 Add support for VK_EXT_line_rasterization 2019-08-15 18:27:39 +01:00
baldurk 9589d2d893 Add support for VK_KHR_imageless_framebuffer 2019-08-14 18:21:20 +01:00
baldurk 272f993138 If a test already isn't available, don't overwrite that error 2019-08-14 14:15:52 +01:00
baldurk 0c4c710170 Don't re-check fences within the same expire pass
* If we check a fence each time it's referenced, we risk getting a different
  answer the second time we check and expiring it too early.
2019-08-14 14:15:51 +01:00
baldurk 24107ce4ce Don't require depthClamp in vulkan tests unnecessarily 2019-08-14 11:03:58 +01:00
baldurk 1fc9f36114 Add support for VK_EXT_index_type_uint8 2019-08-12 17:53:23 +01:00
baldurk 53fdd792b7 Update vulkan headers to 1.1.119 2019-08-12 17:53:22 +01:00
baldurk 08de2623f8 Add proper feature check for D3D11 test 2019-08-09 11:39:51 +01:00
baldurk cb9b82899c Fix D3D11_Mip_RTV test 2019-08-09 11:30:30 +01:00
baldurk d26462dca8 Add ugly workaround for newer compiler used in vulkan SDK 2019-08-08 10:44:36 +01:00
baldurk d03fd1dd25 Fix support for arrays-of-struct vertex outputs. Closes #1438 2019-07-04 16:28:15 +01:00
baldurk 534f39c723 Don't try to populate maps from dirty resources with no initial contents
* If a buffer has been marked as dirty mid-frame but wasn't dirty at the start
  of the frame then it won't have initial contents. We have to treat it as if it
  wasn't dirty and fall back to using our existing data for it, assuming that is
  a valid way to pre-populate the map's shadow buffer.
2019-07-02 16:57:12 +01:00
baldurk ad2c4a4dc6 Update vulkan headers to 1.1.113 and add support for new extensions
* VK_EXT_shader_demote_to_helper_invocation and VK_EXT_texel_buffer_alignment
2019-07-01 16:57:56 +01:00
baldurk fcd31fb949 Update to vulkan headers 1.1.112, and use own generated dispatch tables
* This removes the dependency on vk_layer_dispatch_table.h which makes it easier
  to update the vulkan headers in future.
2019-06-28 14:09:20 +01:00
baldurk 1fcac940ae Always patch functions looking for bindless descriptor access
* Even if a function isn't passed a global binding array as a parameter, we
  still need to patch it in order to find any accesses it makes directly to
  global resources just as we do in the entry point.
2019-06-24 10:21:23 +01:00
baldurk 96b13075c5 Fix 32-bit compilation of autotest demos 2019-06-18 15:54:38 +01:00
baldurk 88189e316f End stream-out queries in ClearState(). Closes #1412
* Also add tests of stream-out and DrawAuto()
2019-06-12 19:07:22 +01:00
baldurk 3d81638d06 Fix some copyright dates still referring to 2018 2019-06-07 18:54:10 +01:00
baldurk f09c40b8c9 Fix broken cases with GL_ARB_gl_spirv. Closes #1405
* We can't rely on the driver's reflection, since name information might be
  stripped and the driver is within its rights to not reflect anything even if
  we have names. Similarly queries by names etc will not work.
* Also we can't try to change bindings that are immutable on SPIR-V shaders -
  UBO/SSBO bindings, transform feedback varyings, attrib and fragdata locations.
* Programs can't mix and match SPIR-V and GLSL, so when including our own
  shaders in the overlay program make sure they match what the user's shaders
  are.
* For mesh output, we need to patch the SPIR-V if it's a SPIR-V shader instead
  of trying to use the GL XFB varyings set.
2019-06-07 18:53:02 +01:00
baldurk 217506869f Only patch vulkan image layouts at the last second
* Instead of patching e.g. PRESENT to GENERAL early, we keep the 'real' layout
  even if that's UNDEFINED or PRESENT or whatever. We then do a last-second
  patchup whenever we're actually transitioning images in vulkan itself, to set
  the right layout.
* This requires us to do the patching in a few more places - anywhere like
  texture rendering or initial states where we want to go from current state ->
  custom state -> back to current state.
* This also allows us to more gracefully handle PREINITIALIZED image layouts. We
  internally promote them to GENERAL as soon as possible, but keep them around
  as PREINITIALIZED for display.
2019-06-04 18:18:10 +01:00
baldurk 2ff6adb659 Add tests of D3D11 and D3D12's mutable typed backbuffer formats 2019-05-27 14:12:07 +01:00