Commit Graph
12415 Commits
Author SHA1 Message Date
Jake Turner 59ca2811ef Change glGetInternalformativ bufSize values
Specify the maximum count of parameters instead of number of bytes
i.e.

GLint iscol;

GL.glGetInternalformativ(target, fmt, eGL_DEPTH_COMPONENTS, sizeof(GLint), &isdepth);
becomes
GL.glGetInternalformativ(target, fmt, eGL_DEPTH_COMPONENTS, 1, &isdepth);

From GL references pages: https://www.khronos.org/registry/OpenGL-Refpages/gl4/html/glGetInternalformat.xhtml

bufSize

Specifies the maximum number of integers of the specified width that may be written to params by the function.
2021-07-12 20:36:00 +01:00
baldurk 3d3e7506aa Fix parameter generation for RGP event names 2021-07-10 21:30:34 +01:00
baldurk 7c7e9df847 Try to produce old action names for RGP
* This may not work forever but remains compatible for now.
2021-07-09 19:02:49 +01:00
baldurk 4b52bc6a89 Compile fix on 32-bit 2021-07-09 18:13:50 +01:00
baldurk 47df902b46 Add support for encoding/writing DXBC bytecode
* In a couple of places we need to store information that's redundant/pointless
  to try and stay bitwise identical to DXBC (so we can parse a file, then write
  it out and get the exact same result).
* This also means staying bug-compatible with fxc:
  - it sometimes outputs an extra 0x00000000 DWORD after an operation.
  - it outputs interpolation modifiers which the spec says should be 0, and are ignored.
  - it also sometimes outputs extended operands with no actual use of the extended bits.
  - there's ambiguity between swizzle mode and mask mode for .xyzw swizzles, and fxc uses both so we need to ensure we match.
2021-07-09 16:38:52 +01:00
baldurk 54be369c93 Extended opcode lists stride for all structured buffer resources
* This comes up for bufinfo as well as ld_structured
2021-07-09 16:38:52 +01:00
baldurk 292ac0b6f1 Store the SM5.1 nonuniform flag on operands 2021-07-09 16:27:45 +01:00
baldurk 161c16385a Reduce size of DXBC operation/declaration/operand structs 2021-07-09 16:27:45 +01:00
baldurk cb2d459eff Don't assert on variable cbuffer access from shader linkage 2021-07-09 16:27:45 +01:00
baldurk cb60a268ad Make sure custom data is ignored but preserved 2021-07-09 16:27:45 +01:00
baldurk ab3986a22c Only add the implicit ret if there isn't one already 2021-07-09 16:27:45 +01:00
baldurk 96533c71f4 Use different dialog title for different export formats. Closes #2311 2021-07-08 10:35:54 +01:00
baldurk 2061ede738 Rename dxbc_disassemble and split apart to different dxbc_bytecode files 2021-07-07 19:18:32 +01:00
baldurk 81b4d3d804 Add public domain md5 library and implement modified DXBC container hash
* This allows us to disabled any requirement for "experimental shaders".
2021-07-07 19:18:32 +01:00
baldurk e5121198e3 Prevent deadlock in vulkan recursively acquiring RW lock 2021-07-07 19:18:32 +01:00
baldurk ca0b4eabf3 Completely ignore non-dx use of nvenc 2021-07-07 19:18:32 +01:00
Jake Turner fc08cb17f9 Fix VS2019 compiler warnings in demos solution 2021-07-07 09:59:22 +01:00
Jake Turner b3f57d1427 Fix Vulkan Validation Layer error when running VK_Parameter_Zoo
refpushtempl desscriptor update template was not deleted before shutdown
2021-07-07 09:59:22 +01:00
baldurk 23fe6ae67f Remove SM5.0 test for D3D12 AMD shader extensions
* This seems not to work and is not officially supported so there's little value
  in testing it.
2021-07-05 14:20:48 +01:00
baldurk 83cee7b35d Add protection against unknown resources when capturing
* This can happen because the addresses map is shared among all devices so some
  other devices might have added resources which we don't recognise the IDs for
  - though this could break in other ways (same address range for different
  resources on different devices) so it's generally not supported.
2021-07-05 14:20:48 +01:00
baldurk a1b5f01159 Fix tests with references to removed properties 2021-07-05 14:20:48 +01:00
baldurk 979f5244e2 Make demos timeout more generous for leak check tests
* It's fine as-is in release, but in development builds it can take almost a
  minute to reach that frame and capture.
2021-07-05 14:20:48 +01:00
baldurk c08747d792 Fix D3D12 reference counting with missing internal refs 2021-07-05 12:10:07 +01:00
baldurk ba84a52c30 Fix compilation on mac 2021-07-01 20:29:51 +01:00
baldurk a0ec249c75 Fix compilation with older Qt versions 2021-07-01 20:29:46 +01:00
baldurk 4170e51255 Fix mistaken reference in documentation 2021-07-01 20:29:37 +01:00
baldurk cad267eb41 Fix broken <code> tags in event browser filter documentation 2021-07-01 19:27:34 +01:00
baldurk dd9079e8d0 When using Ctrl-F to open find toolbar, ensure tool button is checked 2021-07-01 19:27:34 +01:00
baldurk b64fa99d2b Update documentation for event browser changes 2021-07-01 19:27:34 +01:00
baldurk 1a87e6b084 Avoid selecting red as a highlight colour for filters 2021-07-01 15:15:05 +01:00
baldurk e9c176cd7d Strike-out and don't colourise ignored expressions 2021-07-01 15:15:05 +01:00
baldurk 41e4cc43ec Fix filter highlight colours for dark theme 2021-07-01 15:15:05 +01:00
baldurk 634a8c381a Update test scripts to latest APIs and behaviour changes 2021-07-01 15:15:05 +01:00
baldurk d0accc409b Rename 'name' member of ActionDescription to 'customName'
* This is a deliberate break of compatibility since the field is now often
  empty, for non-markers. This means code will get a more explicit error when
  the name is being referenced, so it can be updated to fetch the name it needs
  as needed.
2021-07-01 15:15:05 +01:00
baldurk 7149302680 Rename 'draw' or 'drawcall' to action
* There's not a good accepted terminology for this kind of event, and for
  historical reasons 'drawcall' has been the accepted term, even though
  that can be quite confusing when a dispatch or a copy is a 'drawcall'.
* This is particularly highlighted by the event browser filters where
  $draw() includes draws and dispatches, but $dispatch() only includes
  dispatches, it's hard to intuitively understand why $draw() matches all
  of these calls.
* As a result we've defined the term 'action' to cover these types of
  events in the same way that we defined 'event' in the first place to
  mean a single atomic API call.
2021-07-01 15:15:05 +01:00
baldurk e7785bd99e Document the flags in $draw(flags & ...) and improve docs formatting 2021-07-01 15:15:04 +01:00
baldurk 9536c07164 Add option to batch import or export filters 2021-07-01 15:15:04 +01:00
baldurk fe81f57316 Remove recent filters button in favour of styling a fake combo box
* The filter icon was confusing since it had a 'refresh' badge instead of
  'save/load/recent' type badge, and making the latter readable in a few pixels
  is not feasible. Having the combo dropdown with saved filters is as intuitive
  and works in-line.
2021-07-01 15:15:04 +01:00
baldurk 7a02ec749b Rename 'Settings' to 'Settings & Help' in filter toolbar 2021-07-01 15:15:04 +01:00
baldurk ae978fdb4f Add some example filters if none are saved 2021-07-01 15:15:04 +01:00
baldurk ec618896a8 Don't allow filter strip to be hidden
* This help prevents possible confusion if someone hides the filter with some
  exclusions active and gets confused why things aren't showing up.
2021-07-01 15:15:04 +01:00
baldurk a92ffa0173 Squeeze a little horizontal space by making root breadcrumb just an icon 2021-07-01 15:15:04 +01:00
baldurk e669eaebfc Ditch $any() and $all() in favour of simple paren nesting
* This means that literals are no longer allowed to contains ()s to match e.g.
  Draw( to implicitly exclude DrawIndexed().
2021-07-01 15:15:04 +01:00
baldurk 5abfb7d5a2 Add a filter $parent() or $childOf() to match events under a marker 2021-07-01 15:15:04 +01:00
baldurk 065d7202b0 Fix a crash with $param() filtering on fake markers 2021-07-01 15:15:04 +01:00
baldurk 0c63ff08ae Fix interaction of mixed must/normal filters 2021-07-01 15:15:04 +01:00
baldurk dc16db6c2d Disable the $event() filter for now
* It's of very little value and causes more confusion than it's worth.
2021-07-01 15:15:04 +01:00
baldurk 3d2101476e Add marker breadcrumbs to event browser. Closes #1031 2021-07-01 15:15:04 +01:00
baldurk 5a1f6fdba8 Elide tool button text if the button isn't large enough 2021-07-01 15:15:04 +01:00
baldurk 5e3c6bb745 persist whether the filter is open as part of the saved layout 2021-07-01 15:15:04 +01:00