Commit Graph

12323 Commits

Author SHA1 Message Date
baldurk dcaabf42e9 Allow python to register custom event filters 2021-07-01 15:15:01 +01:00
baldurk 21e52a10e5 Implement builtin filter expression parsing 2021-07-01 15:15:01 +01:00
baldurk 85954dabbf Add simple stubbed UI for entering filter expressions 2021-07-01 15:15:01 +01:00
baldurk b9476bad24 Add stubbed filter implementation, with hardcoded default filter
* This replicates the original filter behaviour, only draws with PopMarker draws
  excluded
2021-07-01 15:15:01 +01:00
baldurk c01c25d5d6 Cache chunk pointer as well as draw pointer
* This will be needed regularly for the filtering process so we want to be able
  to query both out per-EID.
2021-07-01 15:15:00 +01:00
baldurk 4483c982c9 Remove "API Events" drawcalls
* All drawcalls now contain events, even markers. We no longer add virtual "API
  Events", it gets added to the marker pop or command buffer close.
* Note that we will still default filter out marker pops, meaning this is a
  slight behaviour change as API events will no longer be easily selectable.
  However we're adding the ability to show all events which will be preferred.
2021-07-01 15:15:00 +01:00
baldurk aecf687098 Change event browser model to be event-based 2021-07-01 15:15:00 +01:00
baldurk 3a5e98f34e Cache model indices at draw nodes
* This significantly improves parent() and lookups by EID
2021-07-01 15:15:00 +01:00
baldurk 7793f20d1a Switch event browser to use a tree view with an item model 2021-07-01 15:15:00 +01:00
baldurk a8d891bc8f Fix compile warning on linux with Qt metatype comparison 2021-07-01 15:14:54 +01:00
baldurk 4b740b350e Don't identify things like param@5 as referring to EID @5 2021-06-30 16:18:08 +01:00
baldurk 00efa28f2f Fix a crash if user tries to toggle bookmark with no capture loaded 2021-06-30 16:18:08 +01:00
baldurk c451dc81f3 runTo expects an instruction instead of a step index 2021-06-30 16:18:08 +01:00
baldurk d8809653a6 Force NodeMask to 0 on replay. Closes #2307
* We don't generally support multi-gpu, but forcing NodeMask to be 0 on replay
  for all cases may let some captures open when they couldn't otherwise. It may
  not produce meaningful or correct results.
2021-06-30 16:18:08 +01:00
thisisjimmyfb 8059f129d5 add clickable links for Vulkan Validation Layer messages 2021-06-30 13:32:44 +01:00
baldurk 738efd0b03 Fix order of displayed CopyTextureRegion parameters. Closes #2306 2021-06-29 21:11:43 +01:00
baldurk c276d3dc4f Make some misc tweaks and updates to the docs 2021-06-29 16:55:53 +01:00
baldurk bada2aa3d9 Handle persistent maps being unmapped within a capture. Closes #2303
* Previously we expected persistent maps to be persistent, but they can be
  unmapped mid-capture and we need to handle that case.
2021-06-29 14:31:47 +01:00
baldurk cc7115e24c Show better window titles for edited shaders 2021-06-28 13:10:11 +01:00
baldurk cf78735861 GetLiveID should respect replacements. Closes #2300
* This ensures we use the up to date edited pipeline for e.g. pipeline-based
  shader disassembly.
2021-06-28 13:10:11 +01:00
thisisjimmyfb f2f8578a19 make glClear always a drawcall 2021-06-26 09:28:42 +01:00
thisisjimmyfb f64cba8e91 Add test to show drawcall count is incorrect 2021-06-26 09:28:42 +01:00
baldurk bbbdba1728 Fix fallback discard pattern overwriting array bounds 2021-06-25 20:18:50 +01:00
baldurk 4aab637f3f Copy libasan library and wrapper script on android when asan is enabled 2021-06-25 20:17:53 +01:00
baldurk 91db918362 Try to link with ASAN on android when enabled (doesn't seem to work) 2021-06-25 18:28:03 +01:00
baldurk 9547de7405 Batch together initial state application into fewer command buffers
* Some drivers struggle with one command buffer per resource and that's
  certainly inefficient, so batching work together (without going too far) keeps
  things working better.
2021-06-25 16:46:24 +01:00
baldurk b8d7cd17ec When serialising an SDObject with lazy children, populate on-the-fly
* If an object has enoug children, the lazy generator can take multiple seconds
  on e.g. android to fully populate. This is a long enough stall to cause the
  host side to timeout while waiting for the next piece of data. Instead of
  populating everything up front before starting serialising, we now populate as
  we go for each child, so that there's a steadier stream of data and avoid any
  timeouts.
2021-06-25 15:51:43 +01:00
baldurk 6212e9876e Fix documentation being missing on ResourceFormat.type 2021-06-24 16:58:34 +01:00
baldurk 8f0e1de669 Don't write to pNext pointers in SerialiseNext() when writing
* These pNext pointers might be in read-only memory so it would cause an
  exception, and nothing has changed so there's no need.
2021-06-24 16:55:02 +01:00
baldurk c3d19f87f0 Disable buffer_device_address on older windows Intel drivers 2021-06-22 15:03:26 +01:00
baldurk 44431cd536 Explicitly mark depth states as 'disabled'. Closes #2296
* On all APIs when depth is disabled the writes are skipped as well. Explicitly
  set the function and write state to say that they are disabled.
* This also papers over a weirdness on D3D11 which has confused a couple of
  people, where the retrieved desc with GetDesc() on a state object can be
  different to the one it was created with when you set ignored parameters -
  like the depth function with depth disabled.
2021-06-22 10:37:49 +01:00
baldurk 0bc42d8cd1 Fill out D3D12 depth-stencil read-only flag states 2021-06-22 10:06:10 +01:00
baldurk c73d8c41a2 Don't replay when creating outputs
* This is only necessary if the overlay refresh will actually do work, but when
  an output is created it can't.
2021-06-17 15:10:42 +01:00
baldurk 16937f160e Fix a crash when push constants are provided insufficient data 2021-06-17 14:30:23 +01:00
baldurk e15906fddb Polygon offset clamp is core now 2021-06-17 13:22:16 +01:00
baldurk 71b6e2b321 Speculative crash fix, protect against invalid indices in cbuffer tag 2021-06-15 16:24:25 +01:00
baldurk 9db41e0a5e Update IRC details to point to OFTC 2021-06-15 11:26:58 +01:00
baldurk 47d4f4efe0 Tweak some of the status message strings to be clearer 2021-06-10 10:33:51 +01:00
baldurk 6c503e7d34 Prioritise glTextureViewOES over glTextureViewEXT 2021-06-09 00:15:30 +01:00
baldurk 51699a57b7 Fix python checks not properly running on enums, and fix new errors
* We whitelist a couple of cases where the naming scheme should be broken.
2021-06-08 16:34:52 +01:00
baldurk fe63f8b16d Set uniformRowHeights on Vulkan/D3D12 pipeline state tree widgets
* This prevents Qt from doing O(n) work to calculate row sizes in some cases
  when we know they're all going to be identical.
2021-06-08 14:23:56 +01:00
baldurk 8a2cd4b9fc Disable use of buffer_device_address on qualcomm 2021-06-08 14:23:56 +01:00
baldurk 17cc3002cc Fix config push to android for new android versions
* The config folder changed in some android version, so we need to use the right
  one.
2021-06-08 14:23:56 +01:00
Jake Turner cf4ce8fc41 Apple Xcode added qrenderdoc sources and headers
Hardcoded to Code, Styles, Widgets, Windows *.h*, *.c*, *.m*
These files are not built by Xcode.
They are in the Xcode project to support browsing qrenderdoc source code.
2021-06-08 09:22:31 +01:00
Jake Turner 340a533715 Make OSX_ICONFILE Apple specific
Wrap it with if (APPLE) and APPEND to the config file
2021-06-08 09:22:31 +01:00
Jake Turner 7bfe758f57 Apple Xcode specify PATH for custom commands
Capture the PATH variable at cmake invoke time and store in the cache.
Use the captured PATH variable for the make based build targets custom_swig and QRenderDoc.
This fixes the problem on Apple Silicon that the Xcode PATH does not include the default homebrew paths (/opt/homebrew/bin /opt/homebrew/sbin)
2021-06-08 09:22:31 +01:00
Jake Turner 71243f505d Xcode generator setup for Apple
Restrict the schemes to match the configuration on the cmake command line
Disable Debug Document Versioning
Specify the executable path for build-qrenderdoc target
2021-06-08 09:22:31 +01:00
Jake Turner a71914c03d Apple qrenderdoc cmake remove extra space in RPATH 2021-06-08 09:22:31 +01:00
Jake Turner 4ea889c7c9 Make QMAKE_OSX_DEPLOYMENT_TARGET Apple specific
Wrap it with if (APPLE) and APPEND to the config file
2021-06-08 09:22:31 +01:00
Jake Turner 077c07f06f Use MAKE generator for qrenderdoc custom_commands
Use MAKE generator for any non-make cmake program not just ninja build system ie. Xcode generator
2021-06-08 09:22:31 +01:00