Commit Graph

9829 Commits

Author SHA1 Message Date
baldurk 6bbf4cb209 Allow fallback to glslangValidator in tests for compiling SPIR-V 2019-12-12 17:58:52 +00:00
baldurk 848b58826d Ensure we ignore unused parameters in DescriptorUpdateTemplateCreateInfo 2019-12-12 17:58:52 +00:00
baldurk 0773f13949 Ensure re-used handles in descriptor sets don't cause problems
* Previously if a handle was reused, and then a stale descriptor referencing the
  old handle was removed it would remove the *new* object from the list of
  referenced resources. This could cause a resource to be not included in a
  capture if nothing else added a new reference.
2019-12-12 17:58:52 +00:00
baldurk 6581251ec0 Fix SPIR-V processing of vector constants 2019-12-12 17:58:51 +00:00
baldurk 39793cf850 Renderpass barriers apply to whole 3D texture even when using one slice
* When the renderpass has an initialLayout = UNDEFINED, that applies to the
  whole resource on 3D textures even if we're only rendering to a slice at a
  time
2019-12-12 17:58:51 +00:00
baldurk f8ff6b4f6c Fix parameters for rendering 3D depth images in texture zoos 2019-12-12 17:58:51 +00:00
baldurk fb452c3c02 Make sure to always update oldLayout when processing image states
* This is used to determine what barriers to apply
2019-12-12 17:58:51 +00:00
baldurk 20abaec49f Don't load self-capturing module, only use if already present 2019-12-12 17:58:51 +00:00
baldurk c7d0d9dad8 Add some internal marker regions in vulkan driver 2019-12-12 17:58:51 +00:00
Steve Karolewics a88deaeba0 Implement D3D12Replay::DebugPixel
This enables the core loop of capturing PS inputs, building shader
debug state, and walking through a shader's instructions.
2019-12-12 17:58:25 +00:00
baldurk c63baeb609 Bind unused pixel pack/unpack buffers in GL_Resource_Lifetimes test
* This ensures having them around doesn't break capture.
2019-12-11 16:59:50 +00:00
baldurk 7726dc1cd0 Test glCreateShaderProgramv use in GL_Resource_Lifetimes test 2019-12-11 16:52:20 +00:00
baldurk eae57b68e1 Don't trash current program state in GL when creating MSAA conv programs 2019-12-11 16:45:37 +00:00
baldurk 0659c7338f Fix state push/pop not being quite right on GL 2019-12-11 16:45:21 +00:00
baldurk 6fa54ce342 Ensure ClearState() is serialised in D3D12 command lists 2019-12-11 15:38:02 +00:00
baldurk b15c0541f0 Explicitly report sparse features as unsupported on vulkan
* What partial support was there has rotted since vulkan was released. This
  feature is virtually unused so we just disable it being honest.
2019-12-11 15:28:38 +00:00
baldurk ec5d1ae39e Don't set immutable samplers for initial state SAMPLER descriptor writes 2019-12-10 19:39:29 +00:00
baldurk 67082e037d Fix GL texture zoo handling of RGB9E5 2019-12-10 19:39:08 +00:00
Reiner Dolp d3c4b97e2f Export 32bit floating point textures to 32bit floating point EXR files 2019-12-10 16:32:40 +00:00
baldurk 723c293414 Update vulkan headers and implement VK_EXT_tooling_info. Closes #1632 2019-12-09 16:46:26 +00:00
baldurk 649534072a Fix implementation of GetPhysicalDeviceProcAddr 2019-12-09 16:38:34 +00:00
baldurk 73bc49fe6e vulkan dispatch table must be generated with trailing newline 2019-12-09 16:37:27 +00:00
baldurk e83bc8ed04 Remove memory index mapping from physical device record
* This never worked because the spec requires a coherent memory type and it must
  be sorted first, many applications either used it anyway no matter how
  unappealing we made it look or else ignored the coherent flag entirely but
  treated memory as coherent anyway...
* The extra cold data pointer in the physical device record is the instDevInfo
2019-12-09 16:37:11 +00:00
baldurk 28e4039db8 Fixup secondary command buffer submission events
* When deleting events reserved for indirect draws we need to also fixup the
  secondary command buffer base submission events or they'll be out of sync.
2019-12-06 15:47:22 +00:00
baldurk ff30bd65e6 Remove VK_EXT_full_screen_exclusive when creating replay device 2019-12-06 14:55:11 +00:00
baldurk 67f56bf431 When creating SPIR-V bindpoint mapping ensure we cover all attrib binds 2019-12-06 01:04:12 +00:00
baldurk 4f3ea6d12b Special-case VK_LOD_CLAMP_NONE for samplers in pipeline state view 2019-12-06 01:04:12 +00:00
Steve Karolewics 149dbeab9b Add helper function to fetch constant buffer data for D3D12 debugging 2019-12-05 19:23:45 +00:00
luckyxxl 7bf16a8e8b fix glVertexAttrib*f capture 2019-12-05 12:37:38 +00:00
baldurk 01674ec93b Invoke qmake in release mode when building a release cmake build 2019-12-03 21:47:04 +00:00
baldurk cca4a42e5c Fix vulkan environment variable name 2019-12-03 21:47:04 +00:00
baldurk 3df0c59935 Don't use -Wcomma in old versions of clang 2019-12-03 10:12:06 +00:00
baldurk 6d1d302491 Fix a number of warnings identified by higher clang warning levels
* We enable a couple of high signal-to-noise warnings in all clang builds
2019-12-02 20:41:28 +00:00
baldurk 759926493b Don't add STORAGE_BIT to MSAA textures unless it's supported
* Now that we've decoupled MS->Array and Array->MS we might have the former even
  if the latter is unsupported.
2019-12-02 20:41:28 +00:00
baldurk 5ba3026f68 Don't include alignment padding in returned alloc size. Closes #1625
* If we include the padding we might try to over-allocate the initial contents
  and copy/fill beyond the valid size for the actual memory allocation.
2019-12-02 20:41:28 +00:00
baldurk cfe601123c In debug builds display resource ID in resource inspector
* This can save some breakpointing and looking up in maps when a resource is
  named (especially if it's not given a unique name).
2019-12-02 20:28:05 +00:00
baldurk ff08748238 Ensure all files have trailing new-lines and enforce with clang warning 2019-12-02 20:28:05 +00:00
baldurk fde74d4710 Handle thumbnails of 0 width or height without crashing 2019-12-02 14:08:46 +00:00
baldurk 397ea679f5 Handle the present call being within markers 2019-12-02 13:13:59 +00:00
baldurk 6e6c7bac62 Fix old terminology in renderdoccmd documentation 2019-12-02 13:08:19 +00:00
baldurk 01c80c4b14 Don't add vkQueuePresentKHR drawcall while replaying 2019-12-02 13:08:10 +00:00
baldurk 90c4c9855c Remove unnecessary STL includes from header files
* Some of these were leftover and no longer needed, some only needed in a subset
  of cpp files.
2019-12-02 11:59:55 +00:00
baldurk 8db0811678 Don't include ostream in rdcstr.h
* It's only needed for renderdoccmd and catch tests, so define it locally where
  needed.
2019-12-02 11:15:07 +00:00
baldurk f42d718ffa Explicitly mark system chunks as internal in their names 2019-12-02 10:59:29 +00:00
baldurk 7aca655ffc Don't access debug manager when structured exporting 2019-12-02 10:58:37 +00:00
baldurk 5838a33d7e Don't add array stride until first child struct 2019-11-29 22:41:09 +00:00
baldurk 9e9423db41 Fix 32-bit compilation 2019-11-29 15:02:06 +00:00
baldurk f3e0d98484 Add out of memory logging on rdcstr/rdcarray 2019-11-29 15:02:06 +00:00
baldurk 41e4f61ea8 Ensure a VAO is bound for depth MSAA<->Array copies 2019-11-29 15:02:06 +00:00
baldurk 267eb7f6ea Ensure a sized format is used when creating MSAA textures. Closes #1623
* If the application used an unsized format like GL_DEPTH_COMPONENT to create
  the texture with glTexImage2DMultisample then that's legal, but if we promote
  it to glTextureStorage2DMultisampleEXT for DSA we can't continue to use that
  unsized format so we need to convert to sized by picking a sensible default.
2019-11-29 15:02:05 +00:00