Commit Graph

1077 Commits

Author SHA1 Message Date
baldurk ebaefc82a9 Normalise and make python/public interface more consistent
* We enforce a naming scheme more strongly - types, member functions,
  and enum values must be UpperCaseCamel, and member variables must be
  lowerCaseCamel. No underscores allowed.
* eventId not eventID or EID, and Id preferred to ID in general. Also
  for resourceId.
* Removed some lingering hungarian m_Foo naming.
* Some pipeline state structs that are almost identical between the
  different APIs are pulled out into common structs. Where something
  doesn't make sense (e.g. viewport enable for vulkan) it will just be
  set to a sensible default (in that case always true).
* Changed scissors to be x/y & width/height instead of sometimes
  left/top/right/bottom
* Abbreviations are discouraged, e.g. operation not op, function not
  func.
2017-12-22 13:02:36 +00:00
baldurk 95bebdbbe1 [Coverity] Remove unused call without side-effects 2017-12-21 12:19:02 +00:00
baldurk 84331ebf0b [Coverity] Fix missing check for negative return 2017-12-21 11:56:54 +00:00
baldurk 8f598e0b0f Update toolwindowmanager to 2b84ee038d3883836e13a952ae14ab2e6ff842a6 2017-12-21 11:44:55 +00:00
baldurk 7f20040105 Add timeline bar to default layout 2017-12-21 11:10:50 +00:00
baldurk b070a371e2 Improve D3D11 predication handling, and track other asyncs independently
* Instead of replaying predication, we now always skip it during replay,
  so all objects will render. This is much more consistent and
  understandable behaviour instead of things mysteriously disappearing
  with no obvious reason why.
* We track the predication that would have happened and replay Begin/End
  pairs so that we can know if the predication *would* have failed.
* This is displayed in the UI (currently in the raster state, for lack
  of a better location) with the pass/fail that would have happened.
* This information can feed into other places for analysis like the
  pixel history.
2017-12-20 23:41:08 +00:00
David McFarland 8119f98c65 LiveCapture: specify bpl when creating RGB888 thumbnail
Qt rounds up the bpl to a multiple of 4 bytes, so this was crashing for me with
odd sized thumbnails.
2017-12-20 19:00:50 +01:00
David McFarland 7ae6cc3c37 qrenderdoc: fix --targetcontrol 2017-12-20 19:00:29 +01:00
baldurk b15422f4c1 Re-arrange CMakeLists.txt a bit to separate qrenderdoc & pyrenderdoc
* Now you can build the python modules without building the full UI,
  which is mostly useful for docs builds so we can do a minimal compile
  and still generate the docs.
2017-12-19 18:05:25 +00:00
baldurk 04d38bdfe5 Add renderdoc_python.cxx to qrenderdoc module build
* This is needed for rdcarray template instantiations, otherwise there
  are unresolved linker errors.
2017-12-19 18:02:07 +00:00
baldurk 0b3d56f9f9 Ensure python global shutdown after context has closed 2017-12-19 17:32:12 +00:00
baldurk 764b39a23c Add update checking system to Qt UI
* This only runs on windows - on other platforms we rely on system
  distribution or user local builds.
2017-12-19 17:31:32 +00:00
baldurk b7952cfdf0 Minor tidying making function private 2017-12-19 13:05:06 +00:00
baldurk f2e7f8f1a0 Refactor crash/bug reporter system
* The UI dialog is now in Qt. We run qrenderdoc.exe with a very minimal
  startup to display the dialog and send the report.
* The flow has been simplified to have less text and an easier time to
  just click through and send.
* On the first report, the user is gently nudged to enter their email
  address for contact and by default the email is saved for next time.
  They're not nagged more than once about this.
* Optionally the user can select to upload the capture. This is always
  default off, and there is a confirmation dialog making sure the user
  intended to select it.
* After the bug is reported, a unique URL is generated and returned
  which the user can then click back on to see if there's any update. By
  default the UI will also remember the URL and check it every couple
  of days and alert the user in the help menu that there's an update.
2017-12-19 12:26:34 +00:00
baldurk 67090cc085 Add handling to both RDStyle and RDTweakedNativeStyle for menus w/ icons 2017-12-19 12:26:33 +00:00
Cody Northrop 82f4e82155 Add version checking to Android workflow
* Tag the RenderDoc layer with a version string that
  matches the host, including git hash.
* In developer builds, check the version when scanning the
  application for RenderDoc support.
* Pass the warning back to the UI to offer ways to fix.
* Update APK patching to remove existing layer.
2017-12-19 13:26:11 +01:00
baldurk 03a0a06f60 Remove use of itoa (not portable) 2017-12-15 18:12:01 +00:00
baldurk 2460bc998d Add sphinx_paramlinks extension and use :paramref:`` to reference params 2017-12-15 17:33:53 +00:00
baldurk 8d29758851 Remove members of public structs called 'bytes'
* It is at best confusing, and at worst could cause errors by aliasing
  with the python type.
2017-12-15 17:33:53 +00:00
baldurk de6e95845c When specifying a built-in type return type, always put it in ``s 2017-12-15 17:33:52 +00:00
baldurk cc442b7aee Fix compilation of python modules on windows and rename generated files 2017-12-15 17:33:51 +00:00
baldurk 1c9addae52 Skip raw filetype when enumerating texture save formats 2017-12-15 12:28:41 +00:00
baldurk 84220b9aaf Fix uninitialised data in rich resource text layout Refs #820 2017-12-15 12:28:41 +00:00
Richard Khoury 61b227580d Removing unnecessary addition of the ReplayOutput::GetTextureDisplay.
This member function wasn't required and the TextureDisplay was
accessible from within the TexxtureViewer as m_TexDisplay.
2017-12-15 13:20:26 +01:00
Richard Khoury 937c8e7c91 Missing Qt UI file change from previous commits. 2017-12-15 13:20:26 +01:00
Richard Khoury d8bc07f945 Added ability to save out overlay textures using the TextureSaveDialog.
This is part of the work specified by github Issue 586, allowing the
ability to save out the overlay in the TextureViewer.  If no overlays
are on then there is no option to save the overlay. Currently there is
no option to remap the overlay to a grayscale or absolute value range
before saving. This can be a future task.

NOTE: the overlay texture resource that's saved out is not the blended
texture that the user will see in the TextureViewer, it is just the
overlay itself. The ability to save out the blended texture would be a
future task.
2017-12-15 13:20:26 +01:00
baldurk 0c10b20bc6 Fix comment for GetIBuffer 2017-12-14 18:45:45 +00:00
baldurk 316cb41af2 Set a proper title for the virtual file browser 2017-12-14 16:45:39 +00:00
baldurk 78890e9c30 Tweak emphasis in vulkan layer patching message, to focus on Vulkan req. 2017-12-14 14:50:35 +00:00
baldurk b3e48a7576 Add search logic to find android tools automagically, which we ship
* We search first in specified folders by the user (they can browse to
  the android SDK and java JDK).
* If the tools we want aren't found there, we look relative to the UI
  as we now distribute the required tools with windows builds.
* If we still don't find them, we prefer to look in PATH since the user
  has 'opted in' to any tools found in there. If the tool isn't in PATH
  either then we look relative to known environment variables.
2017-12-14 14:38:39 +00:00
baldurk ac5574c5c7 Fix sizing of pages column on left side of settings dialog 2017-12-14 13:33:03 +00:00
baldurk fcba572fb2 Don't set -DSWIGWORDSIZE64 on apple, where uint64_t typedef is different 2017-12-14 10:26:25 +00:00
baldurk 1752a96ba9 Specify -DSWIGWORDSIZE64 on linux to fix problems with uint64_t on swig 2017-12-13 22:43:06 +00:00
baldurk 53e669748e Add emulation of python list functions/interface in rdcarray bindings 2017-12-13 22:43:05 +00:00
baldurk a75a036a12 Add operator== and operator< to many interface structs
* This will enable the last few python list emulation functions, like
  index (which needs operator== to find objects) and sort (which
  obviously needs operator< to sort).
2017-12-13 22:43:03 +00:00
baldurk 0b527fab49 Use rdc types instead of Qt containers in public QRenderDoc interface
* This is to support python bindings - the pyside implementation of
  QVector, QString, etc is not available to SWIG, so SWIG treates these
  all as opaque types.
* Rather than trying to set up bindings that work for rdcarray and
  QList/QVector, or implementing separate bindings, we instead just say
  that the public interface must use the rdc types. In most cases they
  seamlessly convert to/from Qt types anyway.
* In a couple of places we use an array of pairs instead of a map. In
  future we probably want an rdcdict or rdcmap with proper dict bindings
  in python.
2017-12-13 22:43:01 +00:00
baldurk 9b9c74ec03 Fix transform feedback pipeline state display 2017-12-11 20:12:02 +00:00
baldurk 9099e7a8c5 Add missing break statement in switch 2017-12-11 19:37:39 +00:00
baldurk 606660b4e2 Add analytics boolean that tracks if bundles are used in D3D12 2017-12-11 17:49:05 +00:00
baldurk 38ac98bfdd Remove 'Capture Executable' name, be consistent on 'Launch Application' 2017-12-11 14:49:36 +00:00
baldurk 1a514c1310 Attempt to fix weird SWIG compile error with lacking relocatable flag
* Although we're only making binaries so this doesn't seem like it
  should be necessary.
2017-12-07 19:32:23 +00:00
baldurk 80cb5b093a Ensure RDHeaderView remains valid when deferring work 2017-12-07 15:09:51 +00:00
baldurk dff6ce1245 Fix missing #include 2017-11-29 20:10:18 +00:00
baldurk a2f379cfea Allow any activate action on resource lists in resource inspector 2017-11-29 19:01:24 +00:00
baldurk a7056aeec2 Use RDHeaderView for header sizing in virtual file dialog 2017-11-29 19:01:24 +00:00
baldurk 4b562ea49d Allow hitting enter on a file in the virtual file dialog to select 2017-11-29 19:01:23 +00:00
baldurk 8931ed4086 Move leave and keyPress events from RDTreeWidget to RDTreeView 2017-11-29 19:01:23 +00:00
baldurk af7373fb54 Handle root index changing in RDHeaderView - refresh section sizes 2017-11-29 19:01:23 +00:00
baldurk e189ae030c Remove the need for a preceeding / on android (Allow empty root path) 2017-11-29 19:01:23 +00:00
baldurk 59e38e30da Defer deletion of RemoteHost along with tree item when deleting hosts 2017-11-29 19:01:22 +00:00