Commit Graph

902 Commits

Author SHA1 Message Date
baldurk b7c755192c Remove no-longer used 'context' member of APIEvent structure 2017-04-18 14:57:35 +01:00
baldurk 4f21c29258 Remove unused firstEvent value, since the first event is always 1 2017-04-18 14:57:34 +01:00
baldurk 36ed9fdc70 Remove unused rawType from SpecialFormat 2017-04-18 14:57:34 +01:00
baldurk d40fc8471d Change API enums to enum class, remove now redundant prefixing
* This gives a little nicer syntax, a bit better type safety, and also
  reflects better for SWIG bindings. Overall it's a minor change but
  better.
* We don't update the C# UI at all, since it's soon to be removed and
  not worth the effort/code churn.
* For now so we're ABI compatible with C#, all enums are uint32_t, but
  that is an obvious optimisation in future to reduce struct packing.
* We avoid 'None' as an enum value, because it's a reserved word in
  python so will cause problems generating bindings.
2017-04-18 14:57:33 +01:00
baldurk d81f708f8c Serialised config settings list has to be public for the auto-xml-ising
* Private variables are skipped by the serialisation unfortunately.
2017-04-17 12:28:42 +01:00
baldurk 2978755d54 On D3D11, any non-CS stage can access OM UAVs. Refs #564 2017-04-06 11:46:44 +01:00
baldurk 666aee093b Backport 'tagged' render invokes from qrenderdoc
* This is a possible fix for a case where render work triggered by mouse
  movements (such as pixel and vertex picking) can happen faster than it
  executes, leading to a backlog of render commands and a noticeable lag
  which only gets worse the more you move the mouse until everything
  seems to be unresponsive or laggy (especially if you then trigger a
  blocking command like event change, which will block the whole UI
  until the queued picks happen).
* Since a new pick coming in will override and make redundant the
  previous pick, we allow the render commands to do just that. If a new
  command comes in, we remove any previous commands with the same tag
  and put the command in the first match (this prevents a tagged invoke
  always being pushed to the back of the queue).
2017-04-03 18:31:59 +01:00
Michael Vance a74ddadd59 Improved TreeListView copy/paste support.
- Fix sorting to respect visual ordering by ID, including parent.
- Provide Ctrl-A to 'Select All'. Note that there is an extant
bug with the redraw where renderdocui will not repaint when
it gets focus back.
2017-04-03 07:18:41 -07:00
baldurk d0394d9233 Only do queued row select on the stage that was selected
* This prevents out-of-range errors when picking in a GS out view an
  expanded mesh, and getting a row that's higher than exists in the VS
  in view
2017-03-21 12:38:21 +00:00
baldurk d2d86b5726 Add 'floateleven' buffer format for R11G11B10 packed data, fix unpacking 2017-03-20 13:02:20 +00:00
baldurk bda6cf0870 Fill out default script editor contents after initialising python 2017-03-13 17:23:41 +00:00
baldurk f76a4cc339 Don't launch blocking execute call on UI thread, pop up progress ticker
* This most commonly happens launching an Android program that takes a
  while to launch, or if you're launching a program with the delay for
  debugger option set.
* Instead of the whole UI hanging, you'll get a progress dialog to
  appear while it's waiting.
2017-02-24 17:34:02 +00:00
baldurk 898e954965 Bump version info to v0.34 2017-02-23 17:38:09 +00:00
baldurk fd0a9bee70 Copy in pythonlibs.zip as part of the build process if it exists 2017-02-22 14:53:10 +00:00
baldurk c12279f641 Fixes for multi-instance picking
* Always at least pick the current instance, even if no others are
  visible
* Only apply to VS output picking. Inputs either don't vary with inst ID
  or are trivial (all verts identical) depending on the element selected
* Respect the currently selected element instead of always picking
  the position output
* If we're selecting a different instance, we have to queue the vertex
  selection because otherwise the refreshing of rows breaks it
2017-02-20 22:16:57 +00:00
baldurk 52483a45c3 Update DirectoryFile C# struct to include added fields 2017-02-20 15:14:22 +00:00
baldurk baf2c9fa90 Handle ArgumentException from FileSystemWatcher if path is invalid
* Most likely caused by paths that the class chokes on, like
  \\?\UNC\foo\bar type paths.
2017-02-09 19:28:20 +00:00
Matthäus G. Chajdas 1ba783dea6 Remove quotes from the exePath.
This solves copy/pasting a path from explorer using "Copy as path", which always adds quotes.
2017-02-08 01:51:36 +00:00
baldurk adc325ea4d Do a case-insensitive compare while looking up header file includes 2017-02-02 12:51:55 +00:00
baldurk 477df04072 Make sure we're on a consistent event before calling OnLogFileLoaded
* Certain panels like BufferViewer assume there is a current drawcall
  at startup and not an invalid event ID like 0. Normally the event
  browser is loaded first and sets the event ID, but if it's later in
  the list this will break.
2017-02-01 11:17:56 +00:00
baldurk 11db513705 Rename 'capture' button to 'launch' on CaptureDialog to clarify usage 2017-01-26 23:31:56 +00:00
baldurk 82068eeab8 Set up D3D12 pipeline state view in Qt 2017-01-25 20:13:39 +00:00
baldurk d0aec2197d Implement GL pipeline state viewer for Qt 2017-01-24 19:02:29 +00:00
baldurk 31c29c3149 Give Vulkan shader stage structs in pipeline state consistent names 2017-01-24 12:12:33 +00:00
Steve Legg 87adee1bf1 Implement multi-instance mesh picking 2017-01-20 16:12:48 +00:00
baldurk a9fb044874 Pass through texture swizzles on FBO attachments and display 2017-01-17 11:02:41 +00:00
baldurk 01c3a76625 Apply the type hint when displaying pixel values in texture viewer 2017-01-12 13:15:32 +00:00
baldurk ac47036368 Add an option to hide any markers with only "API Calls" but no draws. 2017-01-09 18:15:45 +00:00
baldurk 329ebc2d05 Don't allow the program to close while a global hook is active 2017-01-06 12:34:36 +00:00
baldurk 030cbfde9a Batch update copyright years everywhere 2017-01-06 12:13:31 +00:00
baldurk 90e068a111 Add support for VK_AMD_negative_viewport_height 2017-01-06 11:30:58 +01:00
baldurk 89b1ff2337 Export drawcall times with proper summation over regions. Refs #468 2017-01-05 11:38:00 +00:00
baldurk 45e7b64eb4 Don't apply durations twice if there's a marker next to a drawcall 2017-01-05 11:37:30 +00:00
baldurk 07fd9c8e0c Speculative fix for crash with buffer viewer being closed early.
* I received a few crash reports with a disposed buffer viewer still
  doing work. My theory is that some operation took long enough that the
  user was able to close the viewer (perhaps *because* it was taking a
  long time) and subsequent work then didn't handle the window having
  been closed.
2017-01-04 16:47:58 +00:00
baldurk 4a2e901807 Don't display pixel context right-click context menu if no log is loaded
* This fixes an uploaded crash, where this context menu could launch
  operations that crash without a capture to work on.
2017-01-04 16:45:54 +00:00
baldurk 8256a00e1e Further crash prevention - ensure area is not empty
* The last fix to this file wasn't complete - both width and height must
  be greater than 0 for the area to be valid to fill.
* Fixes an uploaded crash report.
2017-01-04 16:45:19 +00:00
baldurk b088b21757 Allow renaming the label on captures in the connection window. Refs #476 2017-01-03 17:53:12 +00:00
baldurk 3541731817 Clarify what type of clipping the clipping overlay shows 2017-01-03 16:33:32 +00:00
baldurk 8c8cf07385 Add helper menu items to tools menu if rdocself.dll is loaded 2017-01-02 20:16:27 +00:00
baldurk 6aee676386 Open transform feedback buffers on double click from GL pipe viewer 2017-01-02 20:16:27 +00:00
baldurk 3002c00337 Add warning message if python libraries aren't loaded (mostly for devs) 2017-01-02 20:16:26 +00:00
baldurk e494f13518 Include duration column in event browser export if available. Refs #468 2017-01-02 20:16:26 +00:00
Michael Vance 366581fb3f Add 'run to sample/load/gather' and 'run to generated inf/nan'.
- ShaderDebugState now carries a 'flags' that can be updated when the interpreter is run. Currently supported flags are 'sample/load/gather insn' or 'insn generated nan/inf'.
- DXBC interpreter now pushes operation type into results for simple intrinsics. This avoids the situation where temp decls are by default uint-typed, and any arithmetic operation on float or double operands would result in a uint shader variable. Other intrinsics are largely correct because they create temporaries with appropriate typed constructors.
- Provide icons for user interface elements, based on the existing 'run to' icons with modifications by myself.
2016-12-29 17:11:55 +00:00
Michael Rennie d249faacd3 Test Android target connection for up to MaxConnectTimeout seconds.
Added new setting to SettingsDialog, and passed it to native code via
RenderDoc::Inst().GetConfigSetting("MaxConnectTimeout")
2016-12-24 19:22:10 +00:00
Victor Moya cbb9bd4bff Added new counters and implemented D3D11 Query counters
Added new counter types to support API counters exposed by D3D11/D3D12
Query interface.
Implemented D3D11 Query counters in the D3D11 replay driver.
2016-12-12 16:17:50 +00:00
Arseny Kapoulkine 45d7f14b4d Inject into the process upon a double-click
A canonical UI paradigm is that when you have a dialog with a list of
items as a central element and an "Ok" action, double-clicking the item
results in the dialog confirmation.

This change adds this behavior to the Capture dialog.
2016-12-12 10:55:50 +00:00
baldurk bec04a2274 Bump version info to v0.33 2016-12-03 00:18:10 +01:00
baldurk 553a1008c8 Rename pipeline export, it's definitely not D3D11... 2016-11-30 16:07:03 +01:00
baldurk 9ddce6fe67 Remove errant background colour from some labels 2016-11-30 16:07:02 +01:00
baldurk 2f14e2ac70 make displayAsHex a real member of ShaderVariable, for use in qrenderdoc 2016-11-25 14:15:56 +01:00