Commit Graph
12210 Commits
Author SHA1 Message Date
lizj 5fde0ad90d Fix incorrect backcolorPick button state after cancellation 2021-05-10 14:18:19 +01:00
baldurk 633170eb7e Readback indirect parameters after vkCmdEndRenderPass2 2021-05-06 16:38:01 +01:00
baldurk 20eaae67d6 Add hex float printf support to utf8printf 2021-05-06 14:26:01 +01:00
baldurk bd3cf5c166 Refactor clamping of masked mapped regions to ensure no OOB writes 2021-05-05 18:17:58 +01:00
baldurk 21a5c1dcab Better disassembly of NonSemantic.DebugPrintf 2021-05-05 16:08:48 +01:00
baldurk 9822a84ee8 Compile fix 2021-05-04 19:40:28 +01:00
baldurk 015cae07ca Hook nvEnc open encode session and unwrap device passed in
* Newer nvenc seems to check that this device matches resource->GetDevice() for
  passed in resources which is reasonable to want, so we unwrap it on the way
  in.
2021-05-04 19:07:10 +01:00
baldurk efd2a50a3a Use python datetime for calculating durations, not time.time() 2021-05-04 14:12:03 +01:00
baldurk c7b7d3dbcc Clamp masked writes to mapped memory region against size. Closes #2268
* When manually masking writes to mapped memory with tiled resources we need to
  avoid overrunning the bounds of the mapped region.
2021-05-04 12:21:51 +01:00
baldurk 3d2c003348 Sanitise layout when doing discard patterns
* This is possible in case an application discards a resource straight into
  present layout for some reason.
2021-05-04 10:54:19 +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 3d3a9fa585 Make sure spec constants used for mesh fetch don't overlap with user's 2021-04-30 13:22:05 +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 cbb06800ab Remove unnecessary feature check on MSAA->Array copy 2021-04-30 10:31:08 +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 ce99fd6569 Stringise new D3D12 resource states 2021-04-29 15:36:06 +01:00
baldurk 665c287679 Update toolwindowmanager to 23572b51 2021-04-29 15:31:51 +01:00
baldurk 2ea6d83b60 Handle new DXBC system-value semantics 2021-04-29 13:05:10 +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 f28a3a548f Remove call to FreeLibrary - GetModuleHandle doesn't add to lib refcount 2021-04-29 10:35:35 +01:00
baldurk 93f0997c12 Fix crash on 32-bit index buffers that are less than 4 bytes in size 2021-04-29 10:25:18 +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 57edff9f9e Transition pixel history image to layout matching the current renderpass 2021-04-28 16:29:56 +01:00
baldurk b70d157a35 Only ignore transitions from undefined current state for partial updates
* If the current state of a temporary ImageState is unknown in a renderpass
  transition mid-command buffer that means it's a subresource which isn't
  touched and we want to skip barriering it. We *don't* want to barrier from
  UNDEFINED and discard.
* However if this is a real ImageState which hasn't been initialised, we do want
  to do that. So only opt-in to the skipping behaviour in the case we know this
  isn't a 'real' ImageState but a temporary tracker.
2021-04-28 16:29:41 +01:00
baldurk 57c22874e3 Add required dynamic state for discard patterns PSO 2021-04-28 16:28:15 +01:00
baldurk 85aef09a5b Don't rely on depthOut member of DrawcallDescription 2021-04-28 16:19:31 +01:00
baldurk a252136c81 Handle VK_WHOLE_SIZE in memory flush of mapped tiled memory 2021-04-28 12:35:28 +01:00
baldurk a4cba2af13 When grabbing D3D12Core also grab D3D12SDKLayers for validation
* The D3D12SDKLayers needs to match the D3D12Core, so we save both when possible
  (the SDKLayers dll might not be loaded during capture but it should be next to
  the D3D12Core. On replay if we have one we put it next to the D3D12Core we're
  using for replay, and if not we forcibly disable debug otherwise we may crash.
2021-04-28 12:21:57 +01:00
baldurk aedf0cc701 Handle D3D12 hooked libraries on replay moving in memory on reload 2021-04-28 11:59:10 +01:00
baldurk 6b37477e35 Update d3dcommon.h and stringise new D3D feature level 2021-04-28 11:24:04 +01:00
baldurk 52612c1f66 Apply out-of-bounds index count clamping to VS output 2021-04-28 10:36:59 +01:00
baldurk 2e0af1e3ca Fix string issues 2021-04-27 17:13:18 +01:00
Jake Turner 5b2203d9d2 Mac support to get executable path from .app file 2021-04-26 21:58:13 +01:00
Jake Turner da660cd025 Removed redundant RENDERDOC_PLATFORM_APPLE code 2021-04-26 21:58:13 +01:00
Theodore Cipicchio 1e3fc0e320 Fix row count calculation when writing block-compressed DDS data
Block-compressed textures with dimensions that are not evenly divisible
by the block size are typically padded internally to align with the
block size. load_dds_from_file() was previously corrected to account for
this alignment when calculating the number of rows of blocks to read
from a DDS file, but the fix was not applied to write_dds_to_file(),
resulting in missing rows of texels or loading failures when attempting
to open a DDS file generated by RenderDoc from a texture whose
dimensions are not a multiple of four.
2021-04-26 12:18:15 +01:00
Jake Turner e8cfbd5a6f Mac build set the minimum SDK version to 10.15 2021-04-26 11:38:44 +01:00
baldurk aa0be4ee47 Fix unit test expectations for proper truncated components 2021-04-23 20:33:43 +01:00
baldurk acf9987055 Keep chunk allocator memory in resource records in D3D12
* These records can then be kept alive during capture even if the resource is
  released.
2021-04-23 20:33:28 +01:00
baldurk e8e4e64182 Don't pass rdcstr through varargs for log print 2021-04-23 20:08:28 +01:00
baldurk cc2d736301 Remove piece in documentation that caused more problems than it solved 2021-04-23 19:07:31 +01:00
baldurk e78a48bfc3 Implement proper out-of-bounds value filling for vulkan post-vs fetch 2021-04-23 19:07:31 +01:00
baldurk 659c75319b Bounds check input attributes against input array size we have 2021-04-23 19:07:31 +01:00
baldurk 203c4d688e Add buffer_device_address path to vertex output fetch on vulkan 2021-04-23 19:07:31 +01:00