Commit Graph

9594 Commits

Author SHA1 Message Date
baldurk e00d2e28c5 Enforce that all tests are unique (to avoid copy-paste problems) 2019-10-24 18:02:53 +01:00
baldurk fef94ef012 Add more tests of raw/structured buffer debugging 2019-10-24 18:02:53 +01:00
baldurk 4aa3c967ac Fix byte-addressed 4-component loads in shader debugging 2019-10-24 18:02:53 +01:00
tabi.katalin 4037927834 Fix histogram shader compilation for GLES
These are not supported in GLES and causes shader compile errors when replaying a capture: 
- OpenGL does not allow swizzles on scalar expressions
- implicit cast from "int" to "float"
- implicit cast from "int" to "uint"
Scalar swizzling can be replaced by vec4 and constant types can be explicitly specified.
2019-10-24 18:02:10 +01:00
baldurk 875e27d844 Don't bounds check bindset against spaces in D3D12
* In D3D12 bindset != space because spaces can be incredibly sparse and are
  arbitrary. So we can't check that the bindset is in 0...#spaces.
2019-10-23 19:42:07 +01:00
baldurk b8302beac1 Fix error when loading validation layers in vulkan replay 2019-10-23 17:10:26 +01:00
baldurk a3af488927 Don't recursively call IsSupported from GetFriendlyName (and vice-versa) 2019-10-23 17:09:26 +01:00
baldurk a08455c4fb Don't crash if vertex buffer stride is 0 when picking vertices 2019-10-23 11:23:32 +01:00
baldurk bb8c8294e5 Ensure we always create a reflection object, even if it's empty
* Fixes crashes with DXBC objects that only contain input/output signatures
2019-10-22 20:34:20 +01:00
baldurk 92e2899ca3 Add support for DXGI desktop duplication API
* We treat it the same as OpenSharedResource/Handle, an opaque resource fetched
  from elsewhere and wrapped, instantly treated as dirty.
2019-10-22 13:13:36 +01:00
Alexandros Frantzis ba3df46052 Fall back to EGL for GL replay
We want to try to use the EGL platform as a fallback when the GL
platform can't create a GL context, since EGL_DEFAULT_DISPLAY might
still provide a workable EGLDisplay. This, for example, allows us to
replay traces when on-screen display is not required, by using the Mesa
surfaceless platform (by setting the "EGL_PLATFORM=surfaceless" Mesa
environment variable).
2019-10-22 11:07:47 +01:00
baldurk 70780b0750 32-bit compile fixes 2019-10-21 16:06:02 +01:00
baldurk fd5fd7269a Split up texture viewer status bar into separate items to wrap better 2019-10-21 13:56:10 +01:00
baldurk 00b217f6f7 Fix issues with flow layout sizing when too small 2019-10-21 13:51:30 +01:00
baldurk a602e7ab1c Add string form for missing ReplayStatus return codes 2019-10-21 13:05:05 +01:00
baldurk 02520ed8f7 Don't use full filename as texture name in image viewer 2019-10-21 12:28:18 +01:00
baldurk 3cbce1f0c4 Fix calculation of dataSize and using wrong pitch in WriteToSubresource 2019-10-21 12:28:18 +01:00
baldurk bdf2f046d9 Add stubbed out DXIL bytecode decoder 2019-10-18 23:02:26 +01:00
baldurk e0ea5ed3da Split out DXBC bytecode to be separate from DXBC container 2019-10-18 23:02:19 +01:00
baldurk 91c9afb655 Move reflection data into separate struct in DXBC 2019-10-18 21:33:39 +01:00
baldurk 2a21bd8d5e Move DXBC ShaderType to enum class in common header 2019-10-18 20:57:35 +01:00
baldurk cd020007d2 Rename dxbc_inspect.* to dxbc_container.*, and DXBCFile -> DXBCContainer 2019-10-18 20:57:35 +01:00
baldurk 2a1baae8a9 Add decoder of LLVM block-stream 2019-10-18 20:57:35 +01:00
baldurk a9a094bcdd Add bit reader to decode low-level LLVM bitstream 2019-10-18 20:57:35 +01:00
baldurk 6140701358 Add stub DXIL project 2019-10-18 20:57:35 +01:00
baldurk 0bd249c44e Add missing .c_str() when formatting strings 2019-10-18 20:57:23 +01:00
baldurk 30fe42672b Declare multidimensional arrays in right order in SPIR-V disassembly 2019-10-18 15:42:13 +01:00
baldurk 9d05ab992e Handle reflecting runtime arrays of arrays 2019-10-18 15:35:54 +01:00
baldurk 1cfa46e771 Don't call D3D12 FirstFrame() on destruct, but on construct 2019-10-18 15:35:38 +01:00
baldurk 7533c6b7ac Improve handling of different cases registering vulkan layer on linux
* In particular, if there is a mismatched layer registered under e.g. /etc then
  we always need to elevate, even if the user wants their layer to be fixed and
  registered user-local.
2019-10-16 15:12:38 +01:00
baldurk 6562185e1a When using a terminal emulator to sudo, print the command 2019-10-16 15:11:20 +01:00
baldurk b48b3fb87e pkexec is not a reliably graphical sudo, don't use it 2019-10-16 13:39:24 +01:00
baldurk 52e0ecf543 Add dlsym hooking for extreme cases on linux. Closes #1551 2019-10-16 13:02:59 +01:00
baldurk a59d17f5b8 Fix bug with structured buffer loads on D3D11 2019-10-15 17:35:01 +01:00
baldurk f5cc5c22ad Don't display typed buffers as structured in D3D11 pipeline state 2019-10-15 17:34:38 +01:00
baldurk 9548274a60 Store specified GPU address in vulkan info on replay 2019-10-15 16:08:21 +01:00
baldurk eee1efcf4f Handle naming forward pointer types better in SPIR-V disassembly 2019-10-15 15:07:42 +01:00
baldurk 03ddc61779 Support rich resource text in buffer viewer 2019-10-15 15:05:38 +01:00
baldurk 328666e71f Fix clipping of rendered rich resource text 2019-10-15 15:04:56 +01:00
baldurk 553957f933 Fix memory reference tracking of forced references 2019-10-15 14:18:07 +01:00
baldurk ae833182cb Remove a couple of outdated TODO items 2019-10-15 13:10:17 +01:00
baldurk 125cee09ef Add support for VK_KHR_timeline_semaphore 2019-10-15 12:51:11 +01:00
baldurk d48b84d8f5 Pass buffer length to format string parse, for better default format
* If we are only looking at a 4-byte buffer, don't use a uint4 default or it
  will fail to display anything
2019-10-15 10:54:42 +01:00
baldurk 179dbb0e43 Display sample mask in D3D12 pipeline state 2019-10-14 14:06:42 +01:00
baldurk 6be0736d24 Update miniz to 2.10 with ZIP64 support 2019-10-14 14:06:42 +01:00
baldurk e371b5ab72 Update vulkan headers to 1.1.125
* Add support for VK_KHR_spirv_1_4
2019-10-14 10:14:27 +01:00
baldurk d3a4f5dc09 Expand locking around vulkan queues
* Submits need to be atomic vs starting and ending captures, or a partial submit
  could be included in the capture.
2019-10-11 13:07:36 +01:00
baldurk 2f82e3a23a Tweak SERIALISE_ELEMENT_ARRAY to allow chained properties
* E.g. SERIALISE_ELEMENT_ARRAY(foo, bar).Named("foo_real");
2019-10-11 13:07:36 +01:00
baldurk 5acb6af862 Fix some painting not reacting to different fonts correctly 2019-10-11 13:07:36 +01:00
baldurk 83c98f1ff7 Tweak rich resource text rendering to match non-rich text positioning 2019-10-11 13:07:36 +01:00