Commit Graph

12438 Commits

Author SHA1 Message Date
baldurk a3a0aae660 Handle fixed index lookups in array resources 2021-07-19 16:51:50 +01:00
baldurk 6130a120ef Update some out-of-date docs 2021-07-19 16:51:50 +01:00
Dmytro Bulatov 3d00a585d4 Fixed code review comments 2021-07-19 16:51:44 +01:00
Dmytro Bulatov 92f64281d0 Added digital signature validation for d3d12core.dll 2021-07-19 16:51:44 +01:00
baldurk dcb65e20e2 Disable experimental bindless feedback by default 2021-07-15 16:42:53 +01:00
baldurk abe0787bb2 Add test of D3D12 bindless feedback 2021-07-15 16:41:23 +01:00
baldurk 46266a9dd6 Implement bindless feedback for DXBC shaders on D3D12 with patching 2021-07-15 16:41:23 +01:00
baldurk 95ea12b0e5 Fix incorrect D3D12 pipeline state python type references
* Python prefixes D3D12 onto types where in C++ it's in the D3D12Pipe namespace
2021-07-15 16:41:23 +01:00
baldurk a8da2fed64 Respect palette foreground colour properly in rich text
* This is particularly relevant for custom-background colour items on dark theme
  where we may switch to dark text for contrast.
2021-07-15 16:41:23 +01:00
baldurk f5f1737c83 Fix a bug with URL handling that would add richtext twice 2021-07-15 16:41:23 +01:00
baldurk e4325a1cc1 Add debugPrintfEXT to glsl syntax highlighting 2021-07-14 15:33:12 +01:00
baldurk 011acd74b0 Since printf is user-facing now, make formatter errors less fatal 2021-07-14 11:12:54 +01:00
baldurk 7d6e7dfb78 Info return type is used for sampleinfo and resinfo 2021-07-13 18:06:37 +01:00
baldurk 7f13429d0e Log in tests when using linked shaderc 2021-07-13 17:45:59 +01:00
baldurk 24af06ac3e Fix validation warnings in VK_Synchronization_2 test 2021-07-13 17:45:49 +01:00
baldurk e889e4aa52 Ensure we hook all exec* variants not just 'terminal' ones. Closes #2301 2021-07-13 17:04:21 +01:00
baldurk 9bffeb3c37 Add a bytecode editor that can declare resources and add operations 2021-07-13 17:04:21 +01:00
baldurk ee7d88fb89 Allow constructing rdcfixedarray with a fixed size array 2021-07-13 17:04:21 +01:00
baldurk c18764d777 Be more explicit with swizzling functions which ones override swizzles 2021-07-13 17:04:21 +01:00
baldurk 48fa6034ce Re-hash container after modifying program 2021-07-13 17:04:21 +01:00
baldurk 3101334b85 Move TypeName helper into common DXBC header 2021-07-13 17:04:21 +01:00
baldurk f5db9fd19d Remove direct access to DXBC container blob 2021-07-13 17:04:21 +01:00
Jake Turner ee73091d54 Fix crash trying to capture invalid app name
Before the code change this command

renderdoccmd capture ~/dsdsds.app

would trigger segmentation fault accessing a null pointer
2021-07-12 20:36:05 +01:00
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