Commit Graph

1695 Commits

Author SHA1 Message Date
Steve Karolewics 7ff5841885 Check type hint for auto fit range button in texture viewer. 2019-07-11 10:37:33 +01:00
baldurk b56b597cbf Remove use of more deprecated Qt functions, disable deprecation warnings
* Unfortunately at least one deprecated function
  QDesktopWidget::screenGeometry(const QPoint &p) has no easy alternative that
  works on 5.9 which is the version we have available by default on windows.
2019-07-10 17:39:03 +01:00
baldurk fb00089493 Remove use of deprecated QFontMetrics::width() 2019-07-10 16:18:30 +01:00
baldurk 935f243500 Fix use of deprecated QApplication::desktop() 2019-07-10 15:20:15 +01:00
baldurk 77d9d45af5 Qt 5.6 is our minspec, don't use functions added since then 2019-07-10 15:18:27 +01:00
baldurk fe22b7b3a9 QT_DISABLE_DEPRECATED_BEFORE isn't what we want
* This define disables deprecated functions, doesn't disable deprecation
  warnings from before a given version.
2019-07-10 15:18:13 +01:00
baldurk 6abfb6c790 Fix use of obsolete/deprecated Qt functionality 2019-07-10 14:42:54 +01:00
baldurk 328df29793 Only have Qt deprecation notices for things from before 5.9 2019-07-09 18:25:35 +01:00
baldurk a66185b38a Fix use of deprecated QFontMetrics::width() 2019-07-09 17:34:32 +01:00
baldurk dc7bf0f1fc Don't use deprecated overload of QProcess::ExitStatus 2019-07-09 16:16:15 +01:00
baldurk b5d10de243 Handle formatting double signature parameters 2019-07-04 12:50:30 +01:00
baldurk b89c80546c Don't generate recursive callbacks when changing capture comments 2019-07-03 20:51:57 +01:00
baldurk 56663ccfef Fix linux build 2019-06-28 11:43:19 +01:00
baldurk 7275934551 Add check in windows Qt project for PySide existence 2019-06-28 11:43:19 +01:00
baldurk 039b65f89f Add a viewer of the diagnostic log in the UI itself 2019-06-27 10:22:13 +01:00
baldurk e525630a17 Add special resource type for A8_UNORM. Closes #1426
* While it's redundant this format is still valid in D3D so needs to be handled
  correctly.
2019-06-25 19:08:07 +01:00
baldurk a90ec1ecbf Fix Qt Creator compilation on windows 2019-06-24 14:07:41 +01:00
baldurk 51de7255d3 Stop static linking libstdc++ in release builds
* This seemed to cause crashes on some systems as libproxy links to libstdc++
  and can then cause symbol conflicts between the static libstdc++ and the
  system's libstdc++.
* libproxy itself cannot be statically linked, so the solution is either to
  configure Qt without libproxy and break anyone who needs proxy support, or
  stop statically linking libstdc++ and add a new dependency. At commit time
  most distributions have at least g++-5's libstdc++ in their minspec so we can
  require that - the main two that seem to fall short are Debian Jessie and
  CentOS 7. Users on those systems will have to install a newer libstdc++ or
  compile from source rather than using the binary releases.
2019-06-24 13:27:45 +01:00
baldurk 38f0d27901 Use configure_file in CMake to force rebuild if git commit changes
* We also only use GIT_COMMIT_HASH where necessary to avoid rebuilding many
  files for no reason, including splitting version.cpp out into a separate
  project as we do with VS since otherwise changing its preprocessor defines
  rebuilds the whole renderdoc project.
* At the same time, move the git hash to be internal only so we don't have to
  try to link version.cpp into other projects like renderdoccmd or qrenderdoc.
2019-06-20 19:14:14 +01:00
Aliya Pazylbekova e21ddb4877 Set analytics APIs for remote capture file and replay
The API used was not populated for the case of remote
capture and replay.
2019-06-20 19:13:57 +01:00
baldurk bd36bccd43 Synchronise properly when passing commands to capture connection thread 2019-06-18 15:54:38 +01:00
baldurk 48cdc00b7f Fix callback not being run for injection path. Closes #1411 2019-06-11 20:33:20 +01:00
baldurk 3d81638d06 Fix some copyright dates still referring to 2018 2019-06-07 18:54:10 +01:00
baldurk 9e09de40ce Fix analytics tracking of capture features
* We want these flags to be 'sticky', not to be unset if they aren't used in a
  capture.
2019-06-06 17:39:14 +01:00
baldurk 70007d0794 Don't consider interim position builtins to be projected/rasterized
* Even if the VS outputs to the position builtin, if there's a tessellation or
  geometry shader consuming it that doesn't mean much.
2019-06-05 17:57:28 +01:00
baldurk 4738844122 Allow choosing activities for an android program. Closes #1387 2019-06-04 18:18:09 +01:00
baldurk fe406b8ce9 Fix capture times not being timezone-adjusted. Closes #1393 2019-05-27 10:56:08 +01:00
baldurk 605f77217d Don't automatically open a single capture if a dialog is open
* Prevents a crash if the LiveCapture window is closed while it owns a popup
  dialog for e.g. saving or deleting a capture.
2019-05-27 10:21:30 +01:00
baldurk e4333291a1 Allow using shader processing tools for custom shaders
* This is primarily useful for HLSL on Vulkan, but could be used with any other
  combination. If multiple tools can perform the conversion, the highest
  priority one is used.
2019-05-22 17:54:10 +01:00
baldurk 694524c7bd Allow querying the shader encoding supported by custom shaders
* This is distinct from target shaders in the remote proxy case - custom shaders
  are built locally.
2019-05-22 16:09:18 +01:00
baldurk 55107a6144 Only display textual shader encodings for shader compile options 2019-05-22 16:08:31 +01:00
baldurk 807345fd0f Add auto-detection for dxc as a shader processing tool 2019-05-22 14:16:02 +01:00
baldurk 69e4be52cf Display bounding box data in mesh view camera panel
* This isn't the best place for it but it makes the most sense for now.
2019-05-22 13:57:23 +01:00
baldurk 074070b1cf Only unproject position attributes that output a position. Closes #1363
* If we select a UV attribute to draw as position we don't want to unproject it
  for display, just treat it as we do any normal attribute.
2019-05-22 13:38:20 +01:00
baldurk 467dd5e808 Fix calculation of bounding boxes for non-4 component attributes
* If we only have 3 or 2 components, set the remaining bounding box values to 0
  so they aren't set at +/- FLT_MAX.
2019-05-22 12:40:56 +01:00
baldurk dd77b8a2b6 Fix order-of-operations, update position/secondary columns first
* We need to have the correct position and secondary columns before updating the
  mesh configuration that references them.
2019-05-22 12:40:19 +01:00
baldurk 05f044016b Don't call QObject::connect for a NULL model 2019-05-22 11:33:09 +01:00
baldurk 943a790319 Fix a crash when resizing a header view with all sections hidden 2019-05-22 10:53:52 +01:00
baldurk 775fa9b635 Disconnect item model before deleting RDTreeWidget/RDTreeView
* This avoids odd races where some events might be fired mid-destruction and
  encounter the item model in an undefined state.
2019-05-21 13:58:38 +01:00
baldurk c83a087400 Don't pass negative firstMip/firstSlice
* These can be -1 to indicate that all mips/slices are available - so pass 0 in
  that case.
2019-05-21 13:29:43 +01:00
baldurk 59ad2ebfa2 Clear stream-out state when clearing pipeline state 2019-05-20 14:16:43 +01:00
baldurk 06feec392d Use pipeline base mip/slice binding for texture thumbnails. Closes #1327 2019-05-20 13:13:47 +01:00
baldurk e48065c96b Replace use of std::pair with rdcpair wherever possible
* Only remaining uses in our code is when we're interacting with std::map where
  it uses std::pair internally
2019-05-17 16:32:56 +01:00
baldurk 8edc01c928 Show the object (whether a sampler or the texture) in GL's sampler state 2019-05-17 16:32:55 +01:00
baldurk 51c50e0da3 Localise addressing mode state display for GL
* On GL addressing modes are called wrap modes, and the wrap value is then known
  as repeat. If we don't 'localise' this then it can be confusing to show that
  it is "Wrap".
2019-05-17 16:32:55 +01:00
baldurk 96cc08b960 Rename 'show disabled' button to 'show unused' as it is clearer
* Bindings that are unused aren't disabled - they may in fact be explicitly
  enabled - but they are unused by the pipeline which is why they're hidden.
2019-05-17 16:32:55 +01:00
baldurk 699f8753af Convert ToStr, Serialise, and TypeName to use literal strings 2019-05-15 14:12:17 +01:00
baldurk c8a518f05c Refactor rdcstr with small-string and literal-string optimisations
* rdcstr no longer inherits from rdcarray, it implements all functionality
  itself.
* There are now three representations:
  - Heap-allocated, same as how rdcarray behaves.
  - Local-allocated, for small strings we store them in a union array.
  - Compile-time literal, only created from user-defined literals.
* The main observation is that a lot of RenderDoc's strings are compile-time
  literals either from struct names, member names, or stringified enum values.
  Storing these directly and allowing them to be moved and copied quickly saves
  on allocations and time. When the string is modified, it's copied to one of the other formats.
2019-05-15 14:12:17 +01:00
baldurk 4520dcbaa2 Adjust offset used in VB string if there was padding bytes 2019-05-10 23:50:32 +01:00
baldurk ad038ff3e0 Add a log message when running as administrator 2019-05-06 12:25:31 +01:00