Commit Graph

1513 Commits

Author SHA1 Message Date
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
baldurk bfb64300e4 Fix expansion of stream-out buffers in D3D pipeline state viewers 2018-11-01 12:23:13 +00:00
baldurk 57caf01394 Refactor heatmap for quad overdraw/triangle size to be applied late
* Instead of baking these into the overlay texture and trying to decode them
  afterwards, we instead write a grayscale 16F value into the overlay texture,
  and add a special decode display mode that will use the heatmap and bucketing
  provided.
* This means that saving these overlay textures now saves grayscale. When saving
  to an 8-bit format, we remap to 0-255 so that greater than 1.0 values are
  mapped lower.
2018-11-01 12:23:12 +00:00
baldurk 4e48bd09c9 Make it more explicit when only depth is bound (not depth-stencil) in GL 2018-11-01 12:23:12 +00:00
baldurk 8c3cc36e9c Fix check for undefined view format type 2018-11-01 12:23:11 +00:00
baldurk 944e37c47a Adjust colouring for pipeline flow chart, improve contrast. Closes #1141
* On the light theme we use a less dark background colour improving contrast
  with the text.
* On the dark theme the background is still super dark, but we dim the outline
  colour which provides an indication of disabled stages
2018-10-29 17:23:11 +00:00
baldurk c567268902 On dark themes, BrightText should be white still 2018-10-29 17:23:11 +00:00
baldurk 122f0af3aa Add opt-in setting for RGP integration 2018-10-25 11:12:31 +01:00
baldurk bc274b5b51 Only consider stream-out active on D3D if there are buffers bound 2018-10-25 10:49:56 +01:00
baldurk 67ba5f3ed1 Split extensions interface into separate header, add dialog box helpers 2018-10-24 12:22:54 +01:00
baldurk 0a21448114 Rename ExtensionMetadata members to match python naming scheme 2018-10-23 19:32:10 +01:00
baldurk e437919e78 Linux compile fixes 2018-10-23 19:11:22 +01:00
baldurk fd6add235f Add missing default: case in switch 2018-10-23 19:05:29 +01:00
baldurk 1720d321e5 Set general global handle for extension registration work
* When calling the register() function there is no frame or globals, so we need
  to set an internal handle external to that.
* This means functions that get wrapped know that there's a global handler for
  exceptions, which just prints to the log. Otherwise they think they're running
  synchronously and write to an invalid exception handling object.
2018-10-23 15:36:35 +01:00
baldurk 8447e43e78 Fix panel menus 2018-10-23 15:15:39 +01:00
baldurk 94dfb9890b Allow registering window, panel and context menu items with callbacks 2018-10-23 14:23:12 +01:00
baldurk 67fc971cd9 Add a dummy pass-through conversion for already converted python objects 2018-10-23 14:23:12 +01:00
baldurk 789c3b9333 Add plugin icon 2018-10-23 14:23:11 +01:00
baldurk dd3a352408 Add registration and loading of extensions through a management window 2018-10-23 14:23:11 +01:00
baldurk 2dd293d691 Add the ability to load/reload global python extensions 2018-10-23 14:23:11 +01:00
baldurk 07fa9a4a94 Add padding next to check indicators in item views for RDStyle 2018-10-23 14:23:11 +01:00
baldurk 554f6dc9c2 Add natvis file for python objects 2018-10-23 14:23:10 +01:00
baldurk d84479463d Ensure we leave enough room in submenu rects for the arrow 2018-10-23 14:23:10 +01:00
baldurk 0cd0dce704 Don't overload Replay() return type with concrete ReplayManager 2018-10-23 14:23:10 +01:00
baldurk 9e6a5e692e Keep a reference to python function object in wrapped lambda
* This will rarely be relevant, but it ensures if the function is decref'd and
  the lambda is still alive, that we keep the python object alive until we are
  done with it. The primary case for this is persistent callbacks where the
  module is then reloaded.
2018-10-23 14:23:10 +01:00
baldurk 52c0a806c3 Remove glsl.xml and hlsl.xml that are no longer used 2018-10-23 14:23:10 +01:00
baldurk 58de3fa8a5 Walk stackframe to find _renderdoc_internal
* When calling functions in modules, the globals are namespaced to the module
2018-10-18 19:36:21 +01:00
baldurk 21a7584c40 Don't import built-in renderdoc modules with prefixed underscores
* This prevents any modules loaded from doing 'import renderdoc' and having it
  work as expected.
2018-10-18 19:16:25 +01:00
baldurk b5854f0fec Implement VK_EXT_transform_feedback, and use it for mesh output
* For pipelines using tessellation or containing a geometry shader we use
  transform feedback to fetch the output of the vertex pipeline after these
  stages.
2018-10-16 16:53:03 +01:00
baldurk 4dd74c9290 Fix display of stream-out in D3D pipeline state viewers 2018-10-16 16:26:23 +01:00
baldurk a9f814513b Set groups to Expanding instead of MinimumExpanding 2018-10-16 16:26:23 +01:00
baldurk 1210f1fd42 Add pipestate.h to swig interface dependencies 2018-10-16 16:26:22 +01:00
baldurk eec6efc692 Add default case to switch statement 2018-10-11 12:19:06 +01:00
baldurk d7b4609cbe When formatting storage buffers in vulkan there's no root struct to skip 2018-10-11 11:09:37 +01:00
baldurk 0282c9a685 Fix pipeline state highlighting of disabled input attributes
* Using the row index is not accurate when some input attributes are disabled,
  because they won't match up to the original index in the attributes list.
2018-10-11 11:09:36 +01:00
baldurk b91d19e316 Generate better buffer format strings when opening VB or IB buffer views 2018-10-11 11:09:36 +01:00
baldurk 5472319025 When opening buffer textures, auto-generate a reasonable buffer format. 2018-10-11 11:09:36 +01:00
tabi.katalin 369d93b99c Cycle active window with button
A new button is added to the UI so that we can cycle the currently active window when there are more windows to capture.  It's like pressing the F11 button but it works on Android too.
2018-10-10 10:19:43 +01:00
baldurk c132142723 Remove unused lambda capture variable 2018-10-08 19:30:56 +01:00
baldurk 615b743b8e Make shader debugging soft-blocking, pop up progress bar while working
* This prevents the user from accidentally triggering some other process while
  the debug is still on-going, if it's taking a while.
2018-10-08 17:24:00 +01:00
baldurk 4deb5dae60 Don't display progress dialog if process has already finished. 2018-10-08 17:20:38 +01:00
baldurk 045192bf9d Invoke renderdoccmd as root on linux to install vulkan layer, not Qt UI
* On linux sometimes you can't invoke a GUI application as root. To work around
  this, we use renderdoccmd to register the layer if it's available, or fail if
  it isn't.
2018-10-05 18:17:00 +01:00
baldurk 1bd014247d Add -- separator when running kdesudo or gksudo 2018-10-05 18:17:00 +01:00
Adam Sawicki 6b101335e6 StatisticsViewer::AppendShaderStatistics: Fixed typo. 2018-10-05 14:57:37 +01:00
baldurk 91ac88d6b5 Add an '(Active)' suffix on active APIs to be clearer about it 2018-10-04 16:07:36 +01:00
baldurk 995caa2636 Implement empty-marker hiding options for event browser 2018-10-04 16:07:36 +01:00
baldurk 7f0df0821e On macOS work around broken compilers by disabling inheriting CC & CXX
* Normally we want to inherit CC and CXX from the parent process to ensure that
  the user's choice of compiler is respected. Unfortunately macOS 10.14 starts
  shipping broken compilers, so inheriting CC & CXX causes the swig compilation
  to fail.
* As a workaround, we just disable this on macOS assuming the user won't ever
  want to override CC & CXX because it's all locked into XCode anyway.
2018-10-02 18:26:26 +01:00
baldurk ad5cfcd290 Pass through and display VAO object in GL pipeline state 2018-10-01 18:27:44 +01:00
baldurk 66e8c6f9ff Don't set invalid zoom level when no previous texture size is set 2018-09-28 15:03:12 +01:00
baldurk d1bdae94a7 Add workaround for QTBUG-52697, manually do high-dpi in rich text 2018-09-28 15:03:12 +01:00