Commit Graph

1625 Commits

Author SHA1 Message Date
baldurk 60c92b2d84 Implement support for VK_EXT_depth_clip_enable 2019-04-04 16:23:35 +01:00
baldurk 4319c5c2ab Calculate the slice properly for viewing MSAA textures as buffers 2019-04-03 16:42:41 +01:00
baldurk 3d2fa8cd3e Optimise RichResourceText to special-case for single ResourceId text
* Most cases don't have other text together with a ResourceId, so handle an
  isolated ResourceId specially and manually render it.
* Further work - we could cache the name the same way as the RichResourceText
  does. So far it doesn't seem to appear on profiling.
2019-03-29 17:48:15 +00:00
baldurk ad6c050604 Handle displayAsHex in constant buffer preview formatter 2019-03-27 19:34:26 +00:00
baldurk d519f086e1 Don't fetch resource format name for empty bindings 2019-03-27 17:59:16 +00:00
baldurk 13d35645be When clearing RDTreeWidgetItem don't remove children one-by-one 2019-03-27 17:57:56 +00:00
baldurk 9b15368c37 Remove unused code 2019-03-27 17:57:44 +00:00
baldurk 846f09d3a7 Update toolwindowmanager to 213314d7f72c76421970427369e338d271cce279 2019-03-27 11:32:53 +00:00
Wade Brainerd aed614a6aa Improve Vulkan byte range descriptions
Renames the "cont.d" column in the Pipeline State window to
"Additional". This is a less confusing title then the contraction.

Adds a "(VK_WHOLE_SIZE)" annotation after the range if VK_WHOLE_SIZE
was used, and an "(empty view)" annotation if the range is empty.
These annotations are intended to help diagnose incorrectly filled
buffer descriptors.
2019-03-27 04:32:29 -07:00
Wade Brainerd cc0069e72f Fix Vulkan mesh output for tessellated quads
When selecting a draw with a tessellation evaluation shader using
layout(quads), RenderDoc would emit an "Unexpected output topology"
error.

Additional changes:

* Fixes a typo in the VK_EXT_transform_feedback name in various debug
  prints.

* Renames the "GS Out" 3D View tab in the Mesh Viewer to "GS/DS Out",
  to match the corresponding table. This affects all APIs.
2019-03-27 04:31:34 -07:00
baldurk c609a6611c Update toolwindowmanager to d4efe1b6df06618b0bef0d824aba93e8cb8cc197 2019-03-25 18:29:18 +00:00
Vincent de Marignac f970d42c2c Set bound on right arrow keypress to width 2019-03-25 09:05:13 -07:00
baldurk e2bb45fd8f Restore removed LastCaptureExe saving last exe selected. Closes #1318 2019-03-25 15:12:55 +00:00
baldurk 8bb962fef8 Backport Qt constexpr fix. Closes #1319
* This originally comes from a fix for QTBUG-67259, in codereview 224386 -
  https://codereview.qt-project.org/#/c/224386/
* Cherry-picked back to our Qt from 5.9.7/5.11.2
2019-03-25 14:58:29 +00:00
Aliya Pazylbekova 14019cf6c7 Modify "qrenderdoc --targetcontrol" command
Modify "qrenderdoc --targetcontrol" to accept hostname or ipv4
address.
2019-03-14 01:23:11 +00:00
baldurk 26d823905e Allow running on Android 5.0 but with a warning that it's unsupported
* The apk targets api level 21 which is 5.0, so it still won't install on
  anything older.
* We pop up a big warning to the user the first time they try and select such a
  remote host.
2019-03-13 22:24:45 +00:00
baldurk 8e8fd8545b Remove orphaned function implementing close button that was removed 2019-03-11 15:07:37 +00:00
baldurk db89f50a30 Rename Mesh Output panel to Mesh Viewer, since it displays inputs too 2019-03-08 15:40:11 +00:00
baldurk 40546a6d67 symlink qtplugins folder in local macOS builds 2019-03-07 11:02:54 +00:00
baldurk 1dd6933328 Trim strings in structured data to a maximum of 3 lines. Closes #1298 2019-03-07 10:22:15 +00:00
baldurk 4f66f4f32c Remove close button on 'launch application' panel 2019-03-06 11:25:40 +00:00
baldurk a893b48aea Inherit font properly from itemview when painting rich resource links
* This fixes the links not being italic when rendering disabled resources in
  pipeline state view
2019-03-05 17:01:27 +00:00
baldurk 095251cc59 Use qtconf.qrc on macOS qrenderdoc builds as well to locate qtplugins 2019-03-05 14:00:52 +00:00
baldurk ac91a7e8b4 Delete FindResults scintilla 2019-03-01 13:26:23 +00:00
baldurk 95f07ab6df Add missing deref of buffer data in mesh view 2019-03-01 12:47:29 +00:00
baldurk 301ef89aac Only calculate bounding box data on mesh views 2019-03-01 11:34:15 +00:00
baldurk 9fc8c0bd66 Delete dangling GUIInvoke object 2019-03-01 11:34:04 +00:00
baldurk e23974e2bf Initialise variables that might not be set otherwise before first use 2019-03-01 11:33:05 +00:00
baldurk 72d3c0ee3e Set 'pyrenderdoc' global after extension registration. Closes #1291 2019-03-01 08:32:35 +00:00
baldurk ac37a592cc Refactor BufferViewer to avoid race conditions
* We now push everything mutable about the draw data configuration into a single
  struct which we copy around (the actual buffer data remains refcounted and not
  copied). This means that we don't have one thread still trying to do things on
  a model which is being updated on another thread.
2019-02-28 17:48:30 +00:00
baldurk 7541dc6bc7 Add cmake compile options for enabling address/thread sanitizer
* Currently tsan doesn't work well in Qt because it doesn't recognise QMutex
2019-02-28 17:48:30 +00:00
baldurk bbdf2c1f80 Remove redundant self-assignment 2019-02-28 17:48:30 +00:00
tuxerr c6edcf9a38 add support for VK_EXT_fragment_density_map 2019-02-28 00:10:03 +00:00
baldurk ec58308207 With GL we can have binding aliasing. Keep searching for a used binding
* If we have multiple bindings aliasing the same slot, we want to keep going if
  the first one we find is unused to see if the slot is aliased with one that
  *is* used. We'll still use the last unused one if we don't find any used at
  all (and with aliasing any one we pick is as valid as another).
2019-02-22 14:10:25 +00:00
Tobias Kunicke f42a774966 fixed file open dialog 2019-02-22 08:31:09 +00:00
baldurk 2ae5be5328 Fix duplicated label name 2019-02-18 20:42:59 +00:00
baldurk 5a1c5e2db5 Fix extension package names being incorrect 2019-02-18 17:23:19 +00:00
baldurk 24882eb486 When event changes in BufferViewer, preserve row offset don't reset 2019-02-15 15:10:31 +00:00
baldurk 34a97482dd Add helper shortcut to 'renderdoccmd test' to run functional tests
* This invokes run_tests.py with any arguments but specifies the renderdoc
  module and python module paths automatically. Only works if built within the
  project repo itself as otherwise it won't locate the test script
2019-02-14 15:45:22 +00:00
baldurk e9e42839c3 Support specifying structs in buffer formatter. Closes #805
* Structs and arrays-of-structs are completely flattened for the purposes of
  displaying them still.
2019-02-14 12:55:44 +00:00
baldurk bbc2f47fa8 Centralise generation of buffer format strings for struct buffers
* We also fix a number of issues that could cause incorrect formats to be
  generated.
* Test cases added for D3D11/GL/Vulkan to test different struct types. These
  aren't automated at the moment because most of the code they're testing is in
  the UI itself.
2019-02-13 18:50:56 +00:00
baldurk fe0be58908 Implement CGLPlatform using CGL and NSOpenGLContext
* On replay on macOS we use NSOpenGLContext so we can render to windows.
* We have two windowing systems on mac - one for Metal compatible outputs and
  one for OpenGL compatible outputs.
2019-02-13 18:50:54 +00:00
baldurk 02abe02fe8 Add the option to save all selected captures at once
* The filename selected is used as a base, then -frameXYZ is appended to each
  capture.
2019-02-13 18:50:52 +00:00
baldurk dad5d6e074 Display full name if executable has no path markers
* Most likely this executable is an android app and we should display the full
  thing
2019-02-08 19:16:25 +00:00
Haiyu Zhen ca54a910f5 Add --replayhost command line option for qrenderdoc
This allows users to specify which remote host to connect to on startup.
2019-02-07 23:46:33 +00:00
baldurk 852d345bf7 Save the queued frame capture settings with settings files 2019-02-07 15:23:07 +00:00
baldurk fc9249842a Correct description of float controls - min/max is for decimal places
* This wrongly said that it controlled the number of significant figures.
2019-02-07 15:23:07 +00:00
baldurk fbb6b23b23 Support advanced cbuffer layouts
* This includes 8/16/64-bit integers, 16-bit/64-bit floats, and scalar block
  packing
2019-02-07 15:23:06 +00:00
baldurk 6bc6ca9557 Drop legacy ShaderRegister struct, store byte offset per constant
* For D3D11 byte offsets are always uint32 aligned, but for other APIs that's
  not guaranteed. Storing a byte offset is strictly more expressive and a lot
  simpler to reason about.
2019-02-07 15:23:06 +00:00
baldurk 6d07e1c42e Add support for VK_EXT_discard_rectangles 2019-02-05 18:40:31 +00:00