Commit Graph

486 Commits

Author SHA1 Message Date
baldurk cbcfe85d97 Use natural human sort for resources in resource inspector. Refs #1034 2018-08-03 16:52:13 +01:00
baldurk 84a90bfdaf Update RenderDoc API version to 1.2.0, add new function. Closes #1037
* The new function SetCaptureFileComments allows users to add comments to a
  capture after creating it at any time.
* We also use anonymous union to remove the need to duplicate API structs for
  backwards compatibility.
2018-08-03 11:16:24 +01:00
baldurk 12e43443ab Shut down adb when closing qrenderdoc if it's our adb
* This has some possible problems - e.g. if one copy of qrenderdoc is closed and
  kills the server used by another copy. However it seems impossible to reliably
  manage adb and we need to ensure we don't leave the process lingering around.
* At the moment 95% of users don't use android, so it's most important that they
  have a smooth experience.
* This was the cause of problems around updating versions because adb.exe would
  hang around and then be 'in use' and not able to be overwritten.
2018-07-26 17:24:27 +01:00
baldurk 94694e0923 Fix processing of --updatedone
* Mark update as not available before starting up and creating main window.
2018-07-24 17:49:32 +01:00
baldurk b08e9c76c0 Fix incorrectly reversed check for progress of capture transfers 2018-07-24 15:51:30 +01:00
baldurk 10b82e6255 Fix possible race condition with capture loading
* The event browser called SetEventID from OnCaptureLoaded, which would then
  call OnEventChanged on all viewers, which if they kicked off work could happen
  at the same time as the later call to OpCaptureLoaded for them.
* In the mesh viewer this seemed to lead to a race condition and had a chance to
  corrupt memory.
2018-07-13 15:43:55 +01:00
baldurk b955ef0b52 Support a NULL window for functions that only need it for dialogs
* Primarily useful for Python where threading can cause problems, and there's no
  need.
2018-07-11 19:32:16 +01:00
baldurk 1c510cb3a3 Don't crash if RemoteHost hostname is empty or short 2018-07-09 16:28:00 +01:00
baldurk 06d14ff62b Define safe comparisons for python bindings
* In particular this means that it's safe to compare a ResourceId or similar
  against None. It is always not-equal but it's useful to have the comparison
  work and return the expected result instead of throwing a null reference
  exception.
2018-07-06 22:44:17 +01:00
baldurk 286446b008 Fix threading memory corruption with remote host probe 2018-06-22 19:28:35 +01:00
baldurk ec2806df06 Add context menu for manipulating watch panel 2018-06-22 19:28:34 +01:00
baldurk 1761f5ab36 Highlight variables/registers that have changed 2018-06-22 19:28:33 +01:00
baldurk 52e9a6c01d Pass through line-mapping information for each instruction to UI
* This lets the UI highlight the source line as stepping happens, as well as
  allowing stepping purely in HLSL.
2018-06-22 19:28:30 +01:00
baldurk ff9f5675e9 Display high-level language locals corresponding to registers 2018-06-22 19:28:30 +01:00
baldurk 24adf08a75 Remove references to deleted CommonPipelineState 2018-06-21 17:46:15 +01:00
baldurk 0dda96a045 Change previous/next/parent IDs in DrawcallDescription to pointers
* This is a legacy holdover from the C# interop not being able to preserve
  pointers easily.
2018-06-18 18:39:06 +01:00
baldurk 14e3a3d360 Move API-agnostic pipeline state wrapper into core interface
* There's no need for this to be in the UI, and moving it allows it to be used
  from script which is very useful.
2018-06-18 18:39:06 +01:00
baldurk 4561b55464 Persist a default browse directory for file dialogs, if none is provided
* This provides a slightly more sensible default than the application working
  directory.
* The default is shared across all dialogs and open/save.
2018-06-15 19:40:54 +01:00
baldurk 093e8a6b40 Support NewFloatingArea and LastUsedArea properly in AddDockWindow 2018-06-14 17:57:31 +01:00
baldurk bf70aeb64d Handle None being passed from Python for a QWidget pointer 2018-06-14 17:56:18 +01:00
baldurk 01a31b51d8 Print error if GUIInvoke is called with NULL object 2018-05-25 14:21:17 +01:00
baldurk 858b02480b Pass command-line args as 'intent args' when launching apk. Refs #987 2018-05-24 21:42:29 +01:00
baldurk 206e0f1188 Add quality-of-life/convenience accessor functions to SDObject 2018-05-24 21:42:29 +01:00
baldurk ab9a212b8d Update qprocessinfo to 0d591f19f17805d65ef4880c3fc51021523003df 2018-05-23 17:28:42 +01:00
baldurk 851a88133a Remove the 'save all initials' option. Behave as if it's always enabled
* This option has always been a mixed bag - when originally written captures
  weren't compressed at all so saving the cost of a initial contents on a
  gbuffer would have a significant savings.
* Now with compression the savings are lesser, and it's a source of
  bugs/confusion for the case where either a bug is caused by leaking data from
  the previous frame or worse still the contents are discarded incorrectly.
* D3D11 will now behave as the other APIs will - saving initial contents
  whenever needed even if they seem like they might not be used.
2018-05-23 16:08:44 +01:00
baldurk d8a64c4172 Fix compilation on GCC 8. Closes #984 2018-05-15 19:44:17 +01:00
baldurk afb7ea5dab Improve python wrapping of WindowingData
* If we make WindowingData an empty struct not an opaque one, it won't leak memory
* Similarly we need typemaps to allow python to pass plain ints and have them cast to pointers
2018-05-15 19:44:17 +01:00
baldurk 5c26270de0 Implement __hash__() for ResourceId 2018-05-14 16:40:58 +01:00
baldurk f1dcb785a1 Fix implementation of array_setsubscript when deleting a range 2018-05-14 16:40:45 +01:00
Hans-Kristian Arntzen 50dc1d6faa Support A2B10G10R10_SNORM in buffer viewer. 2018-05-11 01:04:45 +01:00
baldurk d7b0807875 Ignore MultiDraw markers when checking if the capture has markers 2018-05-09 13:05:00 +01:00
baldurk 4ade1187aa Fix linux compilation - pass parent QObject* to GUIInvoke 2018-05-08 19:10:28 +01:00
baldurk 2efce90591 [Coverity] Fix incorrect logic identified by deref-before-NULL-check 2018-05-08 12:47:28 +01:00
baldurk 082ab4d75d GUIInvoke takes a QObject* to avoid callbacks after object lifetime
* The GUIInvoke object takes a QObject, and uses QPointer to check that
  it hasn't been deleted when the callback fires. This prevents delayed
  callbacks from executing after the object has been deleted and
  crashing.
* In most cases the pointer is just 'this'.
2018-05-08 11:54:34 +01:00
baldurk 70f879ad7a Export AmdPowerXpressRequestHighPerformance to encourage use of dGPU 2018-05-03 15:35:01 +01:00
Jake Turner cae6b44a97 Fix xcode9.3 -Wunused-lambda-capture errors
Disable the warning on 3rdparty files
${glslang_dir}/hlsl/hlslParseHelper.cpp

Disable the warning on files where fixing it would cause a non-OSX compile error
os/os_specific.cpp
2018-04-30 10:53:42 +01:00
baldurk 52af0722ee Add a 'human formatting' function for special-case/heuristic display
* For unsigned integers this notices UINT16/32/64_MAX and displays as
  a text string for easier consumption.
* Also for numbers over a given threshold we display them as hex instead
  of decimal.
2018-04-26 12:31:05 +01:00
baldurk 9f6610932d Add missing documentation string 2018-04-25 22:08:55 +01:00
baldurk f87338dc0e Add support for VK_EXT_vertex_attribute_divisor 2018-04-25 19:11:04 +01:00
baldurk 048d2c4f4e Bring RenderDoc window to foreground when event is selected from RGP 2018-04-25 19:10:52 +01:00
baldurk 2d0f675ca8 Add socket-based interop with RGP and profile embedding in captures 2018-04-25 19:10:51 +01:00
baldurk c5612dc7dc Add out typemap for rdcpair that passes through ConvertToPy 2018-04-04 16:19:17 +01:00
baldurk 6c3c488a4c Fix typo of knosole -> konsole 2018-04-03 11:46:09 +01:00
Silent 3074ebeb51 Project fixes to fix building from paths with spaces 2018-03-26 15:07:12 +01:00
Baldur Karlsson 5076b9c37f Escape any HTML characters in resource names when rendering rich text 2018-03-15 13:01:36 +00:00
Baldur Karlsson 68a3f3a31f Filter out previous/next drawcall shortcuts when text editing.
Closes #911

editing.
path.
'ad0678a'.
2018-03-12 15:46:44 +00:00
baldurk ab7fa9e281 Ignore python env vars which might load incompatible libs. Refs #902
* PYTHONHOME is used *ahead* of the python36.zip on Python's default
  search path, so we need to suppress that to make sure it doesn't
  interfere.
2018-03-07 22:18:55 +00:00
baldurk 8a0f4a367a Fix RunProcessAsAdmin not quoting arguments 2018-03-06 11:49:51 +00:00
baldurk d25d942c27 Only count capture load time in release mode 2018-03-01 18:45:32 +00:00
baldurk 1cd8559d0c Pass through current GPU vendor in APIProperties, for analytics 2018-02-25 15:29:14 +00:00