Commit Graph

954 Commits

Author SHA1 Message Date
baldurk f20e871510 Add option to make y-flipping a per-texture state instead of global 2019-02-04 18:06:10 +00:00
baldurk 2853029847 Don't make overly-general matches when looking for constants by name 2019-02-04 18:06:10 +00:00
baldurk 36770522d7 Fix shaderviewer shortcuts using QShortcut which doesn't work well 2019-02-04 18:06:10 +00:00
baldurk 73a5357419 Fix handling of primitive restart with a vertex offset 2019-02-04 18:06:09 +00:00
baldurk 86ff87863e Update copyright years to 2019 2019-02-01 18:32:13 +00:00
baldurk e70dd127f3 Use bindpoint mapping when looking up read-write resources on GL 2019-01-28 19:55:40 +00:00
baldurk 317e89f7cb Add QIODevice::Text for text writing, to convert newlines. Refs #1246 2019-01-28 19:55:39 +00:00
baldurk 1d0a9926b7 Fix error message referring to incorrect argument 2019-01-24 19:07:46 +00:00
baldurk 69a76bfb41 Use ASCII name for duration column in draw list export. Refs #1246 2019-01-24 10:15:36 +00:00
baldurk 9443423389 Don't do expensive string work for resource rows that are hidden 2019-01-22 18:02:14 +00:00
baldurk 2ba624adb8 Save the capture settings on launch, offer button to load most recent
* This gives a one-click way to run the last capture, if it's not
  complex/regular enough to be worth saving to a settings file on its own.
* Doesn't save much if you're selecting an exe as the previous exe location is
  remembered, but if you also have command line parameters or a working
  directory it can help.
2019-01-15 10:51:31 +00:00
baldurk 145f4bdb15 Handle GL applications changing BASE_LEVEL / MAX_LEVEL dynamically
* This is the only way in GL to do rendering from one mip to another. We handle
  it and display the whole texture even if it's temporarily constricted, and
  display the mip state in the pipeline viewer.
* If the mip state is constricted at the start of the frame capture, only mips
  0..MAX will be visible at all and other mips will be assumed to not be valid.
2019-01-14 18:02:44 +00:00
baldurk d265a14a45 Change renderdoccmd to be a console program on windows.
* This means it outputs natively/properly to stdout/stderr and its output can be
  redirected with pipes.
* It does mean we need to be very careful whenever it's run internally to not
  pop up a command window, which happens by default.
2019-01-09 16:27:15 +00:00
baldurk 150e6527ad If a texture is typeless then account for type hint when pixel picking 2019-01-09 16:27:15 +00:00
tabi.katalin d19a495ee0 Handle launching more apps on Android
We can check whether an Android app has already been connected to RenderDoc, and warn the user to close the previous app before launching a new one.
2019-01-09 16:27:00 +00:00
baldurk cea0129b9a Don't completely disable tooltip on D3D12 for 'plain' resource views
* We still want the tooltip to display the resource state.
* Also add a tooltip for VBs/IBs which do have a state we want to display.
2019-01-04 16:37:23 +00:00
baldurk 2237c241ff Fix incorrectly named methods in ResourceFormat
* We try to maintain at least an internally consistent naming scheme for the
  python/public interface, even if it doesn't match python naming schemes.
2019-01-03 12:22:29 +00:00
baldurk 6dd67d0069 Fix argument string for buffer views in D3D12 pipeline view 2019-01-03 12:22:28 +00:00
baldurk 96075bc575 Remove unwanted rowspan on D3D12 sample mask
* This messed up the grid outlines as it included another extra row that it
  shouldn't have.
2019-01-03 12:22:27 +00:00
baldurk 36a4de8170 Don't show two empty rows for a completely empty combined image/sampler 2018-12-21 12:38:28 +00:00
baldurk 1617b4618d Fix crash on GL after saving a texture to disk, wrong thread access 2018-12-21 12:38:28 +00:00
Danylo Piliaiev 11fa2294d7 Display conditional rendering state for compute shader
If conditional rendering is enabled its state is always
displayed in both 'Rasterizer' and 'CS' states.

Signed-off-by: Danylo Piliaiev <danylo.piliaiev@globallogic.com>
2018-12-19 16:20:21 +00:00
baldurk 96b881dbd7 Don't keep fetching messages if the remote server has disconnected 2018-12-19 15:57:06 +00:00
baldurk ec6406c8ff Check next step is in bounds for states before checking conditions 2018-12-18 17:38:49 +00:00
baldurk 5f96644d08 Add support for global uniforms in SPIR-V and non-bound textures.
* This isn't relevant for Vulkan, but in GL it's valid to not specify a binding
  and fetch it at runtime (and even if a binding is specified, it's not
  immutable and can be changed).
* Similarly GL allows bare uniforms that aren't in a buffer, which we handle in
  the same way by wrapping them into a $Globals UBO.
2018-12-17 17:10:35 +00:00
baldurk ce88558a7c Refactor RDTreeWidgetDelegate into RichTextViewDelegate that is reusable
* This allows us to add rich text support much more easily into other itemviews
  like RDTableView.
* We set it up for debug messages so that resource links in debug messages can
  be linked.
2018-12-17 17:10:34 +00:00
baldurk 58e2c88e76 Don't custom size horizontal header by default in RDTableView 2018-12-17 17:10:33 +00:00
Danylo Piliaiev 29e38e71a9 Implement VK_EXT_conditional_rendering
Predicate state is displayed in the raster state.
"Draw Call" and "Wireframe" overlays are visible even if predicate doesn't pass.

Signed-off-by: Danylo Piliaiev <danylo.piliaiev@globallogic.com>
2018-12-14 20:22:08 +00:00
baldurk 13e7d1c134 Support display of YUV textures on D3D11, D3D12 and Vulkan
* Supported textures are decoded into standard format of YUVA, displayed
  visually with Y in green, U in blue, V in red.
* A new texture display mode 'YUVA decode' has been added which does a default
  full-range conversion from YUV to RGB.
* Custom shaders can be used to implement a custom decode matrix.
2018-12-14 20:14:07 +00:00
baldurk 2cf5129e71 Add support for YCbCr conversion samplers in vulkan. Refs #1194 2018-12-14 14:08:33 +00:00
baldurk 1cb0f29198 Update channels detail when HDR multiplied text is edited 2018-12-13 18:00:26 +00:00
baldurk 1fc51777d2 Dock live capture windows with capture dialog if visible. Refs #1197 2018-12-13 10:30:01 +00:00
baldurk 8a47aabb94 Remove un-needed resource.h in qrenderdoc project 2018-12-11 19:57:20 +00:00
baldurk 68b23c5f62 Add support for YUV resource formats
* We handle 4:4:4, 4:2:2, and 4:2:0, with packed, 2-plane and 3-plane formats,
  for 8, 10, 12, and 16 bit depths.
* This covers most common formats but still leaves a few out - NV11, palettised
  formats, V208/V408 JPG formats.
2018-12-11 19:57:20 +00:00
baldurk 2411ce70ea Add flags to ResourceFormat to replace bgraOrder/srgbCorrected
* Allows for future expansion as well
2018-12-11 19:57:20 +00:00
Sebastian Krzyszkowiak 9d21221617 TextureViewer: fix wheel zooming on HiDPI screens
Without adjusting for pixel ratio it zoomed in into a wrong place.
2018-12-11 11:05:49 +00:00
baldurk 7194374347 If a valid path is entered into the filename field, browse to it 2018-12-06 12:46:16 +00:00
baldurk d450a4f2f8 Don't try to look up home folder before all roots are found 2018-12-06 12:46:05 +00:00
baldurk 7a541b673d Don't expire lookup-in-progress until all GUIInvokes have completed. 2018-12-06 12:32:08 +00:00
baldurk bbe2f36b18 Add a window title to popup for configuring shader processing tool 2018-11-30 16:20:36 +00:00
baldurk 26511c546c Make RENDERDOC_NeedVulkanLayerRegistration feasible to call from python 2018-11-26 16:39:00 +00:00
baldurk f75b5e235e Change verify map writes capture option to verify buffer access.
* This option will now toggle on the behaviour to fill undefined buffer contents
  with a marker value, both if they're created without data (it will be zero
  filled instead) or mapped with discard (it will keep the old contents
  instead).
* There were too many hard to find problems or misconceptions about the buffer
  filling for it to be useful. Now it will be opt-in instead.
2018-11-23 11:25:39 +00:00
baldurk 13538a4b1c Don't show update dialog if update request failed 2018-11-22 12:16:34 +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 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
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
baldurk fd249cf843 Don't delete and recreate QCompleter when changing list of items 2018-11-12 19:26:36 +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
baldurk bfb64300e4 Fix expansion of stream-out buffers in D3D pipeline state viewers 2018-11-01 12:23:13 +00:00