2573 Commits

Author SHA1 Message Date
baldurk a33eb5fcb1 Allow reinterpreting formats of constant blocks that have bytes backing
* Even without a true buffer, as long as we have access to the bag of bytes and
  a non-opaque layout we can allow reinterpreting.
2022-07-25 10:08:59 +01:00
baldurk 5d51b524c6 Fix interpreting and declaring buffer formats that include pointers 2022-07-25 10:08:59 +01:00
baldurk c98b16fd8c Fix compile warnings 2022-07-22 18:16:09 +01:00
baldurk fda5c4819a Scroll shader viewer to entry point file & line using debug info 2022-07-22 16:10:59 +01:00
baldurk c053912608 Add explicit DXIL shader encoding 2022-07-22 16:10:59 +01:00
Jake Turner fb04266122 Disable Clang "-Wshorten-64-to-32" for files
3rdParty source files and some renderdoc files which include 3rdparty header files

Disable "-Wshorten-64-to-32" for the whole of qrenderdoc render_python.cxx triggers the warning
2022-07-21 11:49:49 +01:00
Jake Turner 1622667bf8 Disable Clang "-Wshadow" for specific files
3rdParty source files and some renderdoc files which include 3rdparty header files

Disable "-Wshadow" for the whole of qrenderdoc render_python.cxx triggers the warning
2022-07-21 11:49:49 +01:00
baldurk 234262649f Fix calculation of small mip co-ordinates for NPOT textures 2022-07-15 18:07:08 +01:00
baldurk c3a6a8a9d6 If there's no fixed data don't fetch the whole buffer 2022-07-14 14:01:08 +01:00
baldurk 7bdf26d329 Implement location tracking and goto for GS printfs
* We can't debug geometry shaders but we can scroll to them, as long as we have
  the primitive. We can't differentiate instances currently without passing that
  data through from the VS (and through tessellation, if it exists).
* This also disables the debug and goto buttons for printfs from shader stages
  that don't support those operations.
2022-07-11 13:02:23 +01:00
baldurk d39197a499 Arrays of float3 with a stride of 12 is only possible in scalar packing
* Previously this would be treated as std430 due to being 'tight' array packed,
  even though std430 only allows as tight as the base alignment - which for a
  float3 is 16-bytes still.
2022-07-11 13:00:18 +01:00
baldurk 1fdb7db07e Don't use shader compile flags when editing decompiled shader 2022-07-04 14:22:59 +01:00
baldurk c817b6f9ff Fix clang warning 2022-06-30 14:49:02 +01:00
baldurk 7990254bc0 Avoid copying shader debug states, only move them 2022-06-30 13:51:26 +01:00
baldurk b9e5e2fd5c Use QList for variables in ShaderViewer
* Using a linked list instead of a vector makes insert/erase operations for
  variables being created and destroyed significantly faster.
2022-06-30 13:24:36 +01:00
Jake Turner 0a4fbe8c30 Improve Xcode project generation for qrenderdoc
Xcode does not match the cmake behaviour of rerunning the target every time if the output file does not exist and then letting the Qt build system handle dependency checking.
Xcode has a property to behave like this, however that is not exposed by cmake.
To improve this for the Xcode qrenderdoc project manually add qrenderdoc sources files as dependencies.

Changed the Xcode project for qrenderdoc to add the files to the UI grouped by the file system folders using the cmake source_group(TREE *) command.
2022-06-27 11:07:46 +01:00
Jake Turner dd58dd012b Update expected error message to match code
Fixes failing "Buffer format parsing" unit test
2022-06-27 11:03:22 +01:00
Jake Turner d34c2cf658 Do not clear catch failure return state 2022-06-27 11:03:22 +01:00
baldurk 20f42feab4 Improve mapping of breakpoints to disassembly & source
* We breakpoint directly on source/disassembly lines rather than trying to map
  to instructions that may get stepped over and skipped.
2022-06-22 20:04:42 +01:00
baldurk 8838a878e8 Show the current event in texture viewer usage context menu 2022-06-22 20:04:42 +01:00
baldurk 2020a71cf1 Account for flip in face culling winding for GL clip origin
* The GL clip origin when changed from lower left to upper left will also invert
  the face culling sense. This is deliberate to counteract the fact that
  otherwise CW wound triangles would be CCW wound, so the flip means that if
  GL_CCW is the front face state and back faces are culled, then visibly CCW
  wound triangles will be culled.
2022-06-21 12:51:31 +01:00
Jake Turner f5a2bae23c Set the enable state for Save, Delete actions
Disable the actions when no captures are selected
2022-06-20 10:12:40 +01:00
Jason Chen 825f1c69fe Fix typo 2022-06-17 16:09:22 +01:00
baldurk 1eee00f01d Remove unnecessary sRGB conversions 2022-06-16 16:30:00 +01:00
baldurk e50e114cb7 Show error/unavailable status for postvs data in mesh view. Refs #2595 2022-06-06 18:35:29 +01:00
baldurk fcc7eada44 Ignore whitespace when matching variable tooltip expressions 2022-06-02 17:01:48 +01:00
baldurk 77232e0288 Fix lookup of HLSL direct cbuffer variable references 2022-05-31 13:06:42 +01:00
baldurk f01dfbecc1 Add a python extension function to access picked location. Refs #2065 2022-05-31 11:26:59 +01:00
baldurk b3e8bdb0f5 Only show base EID not EID range when exporting actions 2022-05-30 15:58:30 +01:00
baldurk 70676a57a4 Fix a Qt error setting layout into buffer format specifier 2022-05-27 10:44:10 +01:00
baldurk ba5f806ba1 Set constant buffer generated format as the auto format 2022-05-27 10:43:55 +01:00
baldurk c77261f0f3 Display struct/enum typenames when available in buffer viewer 2022-05-25 17:18:31 +01:00
baldurk d44d9e4857 Show bitpacking in offset column in buffer viewer 2022-05-25 17:02:27 +01:00
baldurk 4b0b746217 Don't clear annotations when only style changes 2022-05-25 17:02:17 +01:00
baldurk 9bde5324b6 Improve handling of enums in buffer viewer fixed variables 2022-05-25 17:02:10 +01:00
baldurk 91675e8dbb Improve sizing of custom format setcion and use splitter between sides 2022-05-25 16:31:46 +01:00
baldurk 702e361393 Unregister F5 shortcut in buffer formatter 2022-05-25 14:09:37 +01:00
baldurk 694c17d6bf Fix formatting of buffers with explicit unbounded arrays 2022-05-24 17:59:10 +01:00
baldurk 27aa5e05c3 Work recursively to estimate packing rules of a struct 2022-05-24 16:34:42 +01:00
baldurk 397088a813 Remove some cbuffer considerations for regular buffer views 2022-05-23 16:33:21 +01:00
baldurk 444515c67a Always treat vertex buffer formats as scalar packed 2022-05-23 16:33:00 +01:00
baldurk 8d5950af89 Add F5 as a shortcut to update the buffer format 2022-05-23 16:32:35 +01:00
baldurk c5a588d2e4 Fix texture-as-buffer view format string generation 2022-05-23 14:43:08 +01:00
baldurk a1abc95ac2 Remove use of QStringView from newer Qt versions 2022-05-20 16:43:09 +01:00
baldurk cef5aa857b Avoid declaring redundant structs for anonymous GL structs 2022-05-20 14:15:31 +01:00
baldurk 07d7bbc1ae Add tests for buffer format parsing 2022-05-20 14:15:31 +01:00
baldurk 6b133b437c Account for specified struct padding in final root struct 2022-05-20 14:15:31 +01:00
baldurk 7acde16d1e Improve parsing of pointers in buffer formats 2022-05-20 14:15:31 +01:00
baldurk 8ab61370a9 Make blank parse result more consistent 2022-05-20 14:15:31 +01:00
baldurk d2c557a1ae Pick better packing defaults for APIs where we know what is expected
* For vulkan any packing can be legal so we don't pick a default, but at least
  for D3D and GL the type of buffer implies a packing.
2022-05-20 14:15:31 +01:00