Commit Graph

8201 Commits

Author SHA1 Message Date
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
baldurk 6ee796203e Push and pop UBO binding separate from indexed UBO bindings 2018-11-13 12:49:51 +00:00
baldurk 588642c4c8 Add check for android activity being valid 2018-11-13 12:49:51 +00:00
tabi.katalin 6c39b58d0b Handle failed APK installation and patching
If "adb install" command is used with "-g" flag, we may get java.lang.SecurityException on some devices because granting runtime permissions at installation time is only allowed for system apps (however we can enable it in the device's Developer options menu).
Also, pulling APK from /data/app/ may be restricted. We can workaround by copying the APK to a directory which we can access then try to pull the APK from there.
2018-11-13 11:38:44 +00:00
akharlamov 691c115946 Prevent a crash when receiving a corrupt rdc file
It is possible to read a large value into compSize, and consequently read
a large number of bytes into m_CompressBuffer, which can only hold 64k,
which would lead to a crash.
2018-11-13 10:49:50 +00:00
akharlamov f2e68f1d31 Fix crashes when $HOME is not set
In case HOME environment variable hasn't been set, getenv returns
NULL, which leads to a crash.
2018-11-13 10:49:42 +00:00
baldurk 2967851360 Fix typo 2018-11-12 19:57:54 +00:00
baldurk 29898d738d Use vec.data() instead of &vec[0] when possibly empty. Closes #1169 2018-11-12 19:26:36 +00:00
baldurk 09fbe3d34f Add an error if we fail to find the PID for a launched android package 2018-11-12 19:26:36 +00:00
baldurk f331ce814b Change appveyor build matrix, add VS2017 x64 Development build 2018-11-12 19:26:36 +00:00
baldurk 2b8be077fa Don't fetch GL_DRAW_BUFFERn for values above GL_MAX_DRAW_BUFFERS 2018-11-12 19:26:36 +00:00
baldurk fd249cf843 Don't delete and recreate QCompleter when changing list of items 2018-11-12 19:26:36 +00:00
baldurk 54f4104094 Don't look up live ResourceId as if it were original 2018-11-12 19:26:36 +00:00
baldurk 4b82db76e7 Search for python 3.7 as well 2018-11-12 19:26:35 +00:00
baldurk b7ddd9d259 Fix false-positive uninitialised warning on VS2017 2018-11-12 19:26:35 +00:00
baldurk ad4bc8911e Always display all 4 components of output from shader in pixel history
* This means the alpha that was output (and maybe used for blending) is
  displayed even when the target texture doesn't have an alpha component.
2018-11-12 19:26:35 +00:00