Commit Graph

9266 Commits

Author SHA1 Message Date
baldurk 3fa7e0e35f Release pixel picking texture 2018-11-22 19:39:49 +00:00
baldurk 82c5e62934 Don't start overlay marker before commandbuffer has begun 2018-11-22 17:43:45 +00:00
baldurk 7ffdc205ee When rendering depth overlay on Vulkan, set attachment layout correctly 2018-11-22 17:43:23 +00:00
baldurk 790ee7d5f7 Update D3D12 message ID that's now available 2018-11-22 16:55:35 +00:00
baldurk b610cb8d44 Mute annoying and false-positive PIX event messages 2018-11-22 16:55:23 +00:00
baldurk a83dc462f7 Ensure optional interfaces are correctly initialised to NULL 2018-11-22 14:06:19 +00:00
baldurk c3c9f82b87 Require explicit opt-in to enable RGP integration (default is not "0") 2018-11-22 14:05:26 +00:00
baldurk 09d63180d1 Add API option for applications that need access to vendor extensions
* This happens at the application's risk since there's no way to know what
  effect the vendor extension will have or even if it will work together with
  renderdoc's hooking.
2018-11-22 13:00:18 +00:00
baldurk 13538a4b1c Don't show update dialog if update request failed 2018-11-22 12:16:34 +00:00
tuxerr a2c1ef8fd0 add support for VR end of frame markers in vulkan 2018-11-21 11:58:29 +00:00
baldurk 62fc5e5b06 Workaround GCC warning about aliasing 2018-11-20 17:21:22 +00:00
baldurk f415b931c5 Check extension physical device features for availability 2018-11-20 17:12:58 +00:00
baldurk 60855bf8f8 VkPhysicalDeviceShaderImageFootprintFeaturesNV was missed as supported 2018-11-20 17:10:00 +00:00
baldurk 0910de41ad Use VkPhysicalDeviceFeatures2 on replay for patching enabled features 2018-11-20 16:48:59 +00:00
baldurk 648eeaa42e Handle chained physdev feature structs in vkCreateDevice. Closes #1157 2018-11-20 16:34:47 +00:00
baldurk 0eb915447a Handle all sType structures in serialisation, and next chain handling
* In many cases these structs are redundant and currently aren't ever serialised
  directly or valid to be included in next chains. However it's better to take
  the hit now and implement this universally in case new structs are needed in
  future. It's easier to keep up with when new structs are added, and it means
  we have the compiler checking we've handled all structs and don't forget one.
* There are some specific exceptions for structs that really need special
  handling and are just treated as if they're unsupported, on the assumption
  that any special handling will be implemented elsewhere.
2018-11-20 16:28:41 +00:00
baldurk c92a533e84 VkValidationCacheEXT is supported, just not wrapped 2018-11-20 16:28:41 +00:00
baldurk dc002a4ce6 Update vulkan headers to 1.1.93 2018-11-20 16:28:41 +00:00
baldurk 3ff8c0cdb4 Clear indirect copies list after it's been processed at the end of an RP 2018-11-20 10:42:59 +00:00
baldurk b7a276195e Track compute and graphics push descriptors separately. Closes #1182 2018-11-20 10:42:59 +00:00
baldurk e88169cbfe Patch some missing pieces after removing draws from a DrawIndirect 2018-11-19 12:07:42 +00:00
baldurk 94ed33accb Add missing stringise case for MemoryScope 2018-11-19 11:48:30 +00:00
baldurk 3f43ae73d1 Set pipeline bind point for descriptor update templates
* This is needed to know which type of descriptor sets is being mutated for push
  descriptors
2018-11-19 11:48:20 +00:00
baldurk e4ab1448fd Fix vkCmdPushDescriptorSetWithTemplateKHR - ref template & unwrap writes 2018-11-19 11:47:38 +00:00
baldurk 3f4f9902cb Remove error that will commonly falsely fire & replace with explicit log 2018-11-16 15:59:44 +00:00
baldurk 0253dbcc70 During capture report worst-case mem requirements for external images
* On some implementations, external images have lower memory requirements than
  an identical non-external image. To account for the replay being non-external
  we create both and pick the worst when reporting memory requirements to the
  app, so that it allocates enough for us on replay.
2018-11-16 15:13:36 +00:00
baldurk 2d6b004381 Set caret colour to foreground colour in scintilla 2018-11-16 14:06:53 +00:00
baldurk 2994f2f037 Fix incorrect change returning false unconditionally for argc==0 2018-11-16 14:06:44 +00:00
baldurk 42c1ae0753 Block requests for ID3D12Device or ID3D11VideoDevice* on ID3D11Device 2018-11-15 17:20:21 +00:00
baldurk 01cfadd52e Update D3D12 debug interfaces to match latest headers 2018-11-15 17:20:02 +00:00
baldurk c56cc1922f Implement DXGI 1.6 & 1.7. Closes #1174 2018-11-15 17:18:45 +00:00
baldurk 6ba66f0fba Update DX headers to 10.0.17763.0 2018-11-15 17:12:00 +00:00
baldurk 2d4409c124 Keep screen on while renderdoc app is in foreground. Closes #1178 2018-11-15 16:34:38 +00:00
baldurk e330bc20bd Only reupload all cubemap faces for the first glTexImage2D call
* We need a workaround for cubemaps where our redundant-glTexImage2D call has
  dropped a glTexImage2D on level 0 of another cubemap face that should be
  'initialising' it. What we do is just upload all faces. Initial contents will
  then replace the contents.
* However, this assumes there will be initial contents to replace. If we only
  have a set of cubemap uploads because the cubemap was uploaded within the
  captured frame, we can't do this replicate each time or the last face uploaded
  will be splatted across all. Instead we check to see if this is the first
  glTexImage2D call on a level, and only replicate in that case.
2018-11-15 12:31:00 +00:00
baldurk 024a737033 Use CheckAndroidServerVersion to verify apk install. Refs #1132 2018-11-14 18:32:35 +00:00
baldurk ed388f6df6 Launch 64-bit remote server on android where possible 2018-11-14 18:32:35 +00:00
baldurk 953652b398 Replace . with _ when creating buffer viewer format from input attrs 2018-11-14 18:32:35 +00:00
baldurk a7be02bd0b Add empty nodes to VBNodes tracking, to keep indices == vb slots
* This fixes VB highlighting when the bindings are sparse
2018-11-14 18:32:35 +00:00
baldurk cc637cb08a Fix fetching vulkan vertex buffers when bindings are sparse 2018-11-14 18:32:34 +00:00
baldurk 74ce0d92fd Pad 0 with a preceeding space for signed integer display in buffers
* This means that it lines up with -1 the same as positive numbers do
2018-11-14 18:32:34 +00:00
baldurk cd6772d8dc Detect mesa driver and skip initialising IHV GL counters. Closes #1161 2018-11-14 18:32:34 +00:00
baldurk b4f7d74565 Enable GL hooks via EGL on windows, as well as via WGL
* Without this, injecting into a GLES application on windows might not work as
  the hooks won't be enabled when a context create is seen.
2018-11-14 18:32:34 +00:00
akharlamov 5c5ab3def3 Apply thumbnail resampling fix to dx12.
See CL fb4ec5c7e32905b4bc1c7a66a1074e1e8f8e59c8
for full description.
2018-11-14 18:32:07 +00:00
akharlamov ee2cac1a74 Apply thumbnail resampling fix to opengl.
See CL fb4ec5c7e32905b4bc1c7a66a1074e1e8f8e59c8
for full description.
2018-11-14 18:32:07 +00:00
akharlamov 6182c005b9 Apply thumbnail resampling fix to d3d11.
See CL fb4ec5c7e32905b4bc1c7a66a1074e1e8f8e59c8
for full description.
2018-11-14 18:32:07 +00:00
akharlamov a1a0b1a7ec Add ability to save .rdc file thumbnail in formats other than JPEG
By default RenderDoc saves captured frame thumbnail image as JPEG which
is lossy compression and makes it difficult to use as a reference image
for testing. Added an option to save thumbnails in different formats.

In order not to change the binary serialization format of .rdc files, if
the thumbnail format is not JPEG, a default JPEG thumbnail is still
saved in the file header as before, while the actual thumbnail is saved
as an additional chunk in the binary sections list. Older versions of
RenderDoc will just ignore this section and still use the legacy JPEG
thumbnail.

Change-Id: Icbf4fbd629719b49868fb785a656f6c7c9946ef9
2018-11-14 18:32:07 +00:00
akharlamov ad7e01876c Fix thumbnail resampling code to eliminate rounding errors
When resampling thumbnail image during extraction, the math logic
resulted in various rounding errors causing wrong rows/columns of
pixels to be sampled.

Replaced floating point math with integer arithmetic to remove the
rounding errors and produce exact copy of stored thumbnail when no
resampling is needed.

Change-Id: Ic80987f646c5695b4a6755bd8e7110a1a4f675b4
2018-11-14 18:32:07 +00:00
baldurk e1d0275b70 Fix D3D11.5 fence creation
* Casting directly to void * from the wrong type will cause vtable mismatches
2018-11-13 18:30:43 +00:00
baldurk 785e9a98fc Handle unsigned and signed variants for vertex builtins. Refs #1166 2018-11-13 15:45:51 +00:00
baldurk aed809e293 Synchronise when doing glMap(UNSYNC) after buffer orphan. Closes #1164 2018-11-13 12:49:52 +00:00