114 Commits

Author SHA1 Message Date
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
baldurk 1ed4b561e6 Fix discard patterns to work correctly with multisampled UINT textures 2021-05-27 14:18:05 +01:00
baldurk efd2a50a3a Use python datetime for calculating durations, not time.time() 2021-05-04 14:12:03 +01:00
baldurk 47e13a30d4 Add test of GL renderbuffer variants 2021-04-16 13:31:08 +01: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 13ead841a4 Add tests of cubemaps on GL
* GL treats cubemaps in a more special/different way than other APIs
2021-02-01 12:49:02 +00:00
baldurk 20d8ae2dcf Fix display of 3D texture slices when linear sampling
* When displaying mip 0 of a texture at less than 100% zoom we linear sampling,
  but we don't want to linear sample across slices. Adding a half pixel offset
  in z ensures we sample precisely on the slice itself.
2021-01-20 17:15:34 +00:00
baldurk 7e5fc40779 Ignore number of captures made in D3D11_Swapchain_Zoo 2021-01-18 14:18:34 +00:00
baldurk 86ca794494 Add test to check ID3DDeviceContextState refcounting/rewrapping 2021-01-15 11:33:13 +00:00
baldurk 8b5234d0af Fix texture zoo remote server launch when running from renderdoccmd 2020-12-10 16:40:26 +00:00
baldurk 232c4a9ecb Fix texture zoo tests 2020-12-10 16:40:10 +00:00
baldurk 68d690a912 When rendering overlays, clear to transparent black
* This might cause some fringing artifacts when at low scales due to non-PMA
  colors but it means there are no false-positive green pixels.
2020-12-09 18:16:08 +00:00
baldurk 7ff7e0a71d Replace fixed C arrays with wrapper class in public interface
* These map more naturally to python tuples and are easier to wrap in and out.
* We also tidy up the FloatVecVal etc and standardise the members of
  ShaderValue.
2020-12-09 18:16:08 +00:00
baldurk 8be0da2ce3 Add a test of AMD shader operations 2020-11-04 17:48:49 +00:00
baldurk eb967af9d4 Add missing added parameter to tests calling DebugVertex 2020-10-29 10:34:24 +00:00
baldurk ec73718cf0 Test that overlays work on D3D12 with no viewport or scissor bound 2020-10-22 14:48:33 +01:00
baldurk 3f8fb1e1b6 Add MSAA case to overlay tests 2020-10-22 14:11:01 +01:00
baldurk c56e1f0ae4 Don't enumerate GPUs in child process helper 2020-10-19 17:43:58 +01:00
baldurk 9e17b91a94 Test different variations of DXGI swapchains on D3D11 and D3D12 2020-10-02 17:41:58 +01:00
baldurk 1b35c93999 Optimise texture zoo tests with fast path
* Pixel picking is a bottleneck, so do a render to a headless output and read
  that back as a way of quickly checking that all of the subresource is OK at
  once.
2020-10-02 16:26:51 +01:00
baldurk 9b37a8b8a7 Don't print renderdoc log to stdout when running tests 2020-09-04 12:05:48 +01:00
baldurk 55ac2c95a8 Tweak handling of failed tests in artifacts log 2020-09-04 11:50:02 +01:00
baldurk 73248c8488 Include RenderDoc logfile after test runs 2020-08-14 14:58:12 +01:00
baldurk e11c3523a6 Fix subprocess timeout not properly kicking in 2020-08-14 14:58:08 +01:00
baldurk 331aabcde6 Include test process output into test log 2020-07-21 19:57:09 +01:00
baldurk 485f7d21fc Make overlays interact consistently with viewport/scissor
* We also add a red/green display to the viewport and scissor overlay to show
  pixels that fail the scissor test.
2020-07-17 16:53:34 +01:00
baldurk c912ccc3a8 Fix lookup of source var that references an array 2020-07-16 20:45:20 +01:00
baldurk 1df39247fa Fix access to render state in D3D12
* We need to copy the external-facing m_RenderState into the partial command
  buffer's state for partial replay, in case it was modified externally.
* Also when accessing the render state inside a drawcall callback we need to use
  the command buffer's local state, not m_RenderState which isn't updated until
  the replay completes.
2020-07-14 14:08:54 +01:00
baldurk 02a54be6ad When replaying resource discards fill with explicit pattern. Closes #284
* This helps catches cases where a discarded image is accidentally used and in
  many cases may still have valid data. Particularly on Vulkan this is relevant
  for DONT_CARE renderpass load and store ops.
2020-07-13 17:29:11 +01:00
baldurk 0d026a43d6 Remove CompType::Double
* This is a leftover artifact from before we had general extended type support
  and double was the only non-32 bit type we handled. Now we support most type
  formats so doubles are just CompType::Float with 8 byte width
2020-07-12 10:52:10 +01:00
baldurk 02c1669a4d Better handle failures inside nested test sections 2020-07-06 11:14:02 +01:00
baldurk ab5c527489 Update D3D12 cbuffer test to check DXIL 2020-06-19 14:46:00 +01:00
baldurk d4ddb565d0 Add a per-shader debuggable flag to allow finer grained status
* E.g. on D3D12 we can debug DXBC shaders but not DXIL shaders. On vulkan this
  will allow us to have the UI work better when encountering shaders with
  unsupported capabilities or extensions.
2020-06-18 17:22:45 +01:00
baldurk 46a6515356 Handle normalisation of sampled stencil values 2020-06-08 17:09:24 +01:00
baldurk 4a5bd147e1 Fix Draw_Zoo tests 2020-06-01 21:54:43 +01:00
baldurk a0a373a8e1 Fix handling of buffer truncation and zero-sized buffers 2020-05-29 17:26:29 +01:00
baldurk abb959e1fd Handle array textures and multiview properly in overlays. Closes #1895 2020-05-27 22:38:23 +01:00
baldurk 47f2fa8b93 Don't apply restart index if primitive restart is disabled 2020-05-20 11:20:13 +01:00
baldurk c93d92467d Be more forgiving with D/S sampling output 2020-05-20 11:03:55 +01:00
baldurk 2b1b8bedf0 Print test runner output when running out-of-process 2020-05-18 16:58:23 +01:00
baldurk f622ac36d6 Standardise layout of packed texture formats on disk/network
* We preserve each API's interpretation of bit order for packed formats like
  RGBA4 or R5G6B5 when displaying the raw data in the UI, but when we need to
  proxy it or save to disk, we always transform to D3D's order as standard.
* This allows us to proxy them reliably because we always have a standard bit
  order and APIs that need a different order transform when fetching data to the
  standard format, or setting proxy data from the standard format.
2020-05-18 13:21:55 +01:00
baldurk 31b1c0641a Fix debug var lookups in tests for D3D variables 2020-05-13 18:07:26 +01:00
baldurk bfcc484a7c Add tests of drawcall variants 2020-05-12 19:04:57 +01:00
baldurk 8643b01200 Display type name of other exceptions in failures 2020-05-12 19:04:57 +01:00
baldurk 79c47ff91e Ignore bound index buffer for non-indexed draws, apply vertexOffset 2020-05-11 18:04:22 +01:00
baldurk d0385567bf Fix tests referring to SigParameter.compType 2020-05-08 20:43:25 +01:00
baldurk 20e17a3f20 Add a configurable timeout when running demos program 2020-04-30 18:15:28 +01:00