Commit Graph

7532 Commits

Author SHA1 Message Date
baldurk 05201fa67e If no delete filename is specified, don't print false error 2020-05-13 20:48:14 +01:00
baldurk 9ed418f90c Install settings file when running remote server 2020-05-13 20:13:18 +01:00
baldurk 78335f7d00 Fix calculation of array stride on structs in D3D
# Conflicts:
#	util/test/tests/GL/GL_CBuffer_Zoo.py
2020-05-13 18:07:26 +01:00
baldurk 15fa728ab9 Fix handling of empty structs in D3D 2020-05-13 18:07:26 +01:00
Aliya Pazylbekova 08cf503eea Vk Pixel History: Small fixes + more tests
- For counting the number of fragments, also need to disable the depth
  bounds test, since we are not initializing the depth value currently
- Reset depth to 0.0f for shader out, and set it to always pass. So that
  we can get depth values from just one fragment.
- Initialize premod value for individual fragment events. This is not
  surfaced in the UI, but available from the python API and checked in
  tests.
2020-05-13 18:07:11 +01:00
baldurk e9b92a5ca7 Fix handling of base vertex in D3D11. Closes #1862 2020-05-12 19:04:57 +01:00
baldurk a8f1bc3881 Fix handling of index/instance/vertex offsets in vulkan shader debugging 2020-05-12 19:04:57 +01:00
Aliya Pazylbekova 362d523399 Vulkan: fix usage based on shaders
This was based on an example where there is:
eid 1: vkCmdDispatch (used image as ssbo)
eid 2: vkCmdDraw (used image in FBO)
eid 3: vkCmdDraw (used image in FBO)

Image usage added CS_RWResource to draws in eid 2 and eid 3,
since a compute pipeline with the compute shader from eid 1
was still bound.
2020-05-12 19:04:36 +01:00
Steve Karolewics 65a4474fe8 Turn on D3D12 shader debugging by default. Closes #1771 2020-05-12 19:04:17 +01:00
gauthier 4380bf68e6 Fix relative path directory of capture creation 2020-05-12 19:04:06 +01:00
Steve Karolewics f9b86f3a82 Fix broken D3D shader linkage test cases
The rules for merging semantics into an array were not strict enough.
If either the type, interpolation mode, or size is different, or if it
is not using a register's x component, then we can't combine it. Also,
the rules for marking a semantic as array length 1 were too strict,
resulting in some semantics packing into other registers incorrectly.
2020-05-11 18:04:10 +01:00
Jake Turner ed45d15d21 Fix unknown warning "no-deprecated-copy" on Apple
Compile fix for MacOS Catalina
2020-05-11 18:04:00 +01:00
baldurk 6e27f8a54d Check that dll is loaded before keeping it loaded 2020-05-08 21:14:20 +01:00
baldurk 7ddc24e13d Force on dynamic states we want in pixel history, to simplify handling
* This also fixes a case where pipelines with dynamic stencil masks wouldn't
  have the masks properly set for stencil counting and we wouldn't get shader
  output properly.
2020-05-08 20:43:25 +01:00
baldurk c7719f6b61 Keep nvoglv64.dll resident and prevent it from being unloaded 2020-05-08 20:43:25 +01:00
baldurk b83e7516c5 Handle busted debug info coming back from FXC for arrays
* This seems to only happen in SM5.1 builds for some reason, if an array has 0
  length and 1 stride then we try to auto-calculate the stride and length when
  needed in structs.
2020-05-08 20:43:25 +01:00
baldurk 8638dddb84 Allow rdocself to register its vulkan layer 2020-05-07 22:46:42 +01:00
baldurk f7f3b7867a Only transition image and create command buffer if we have to init it
* This means for the case where the image doesn't need any initial state reset,
  we can skip the command buffer and the transition back and forth
2020-05-07 22:46:42 +01:00
baldurk 3d73f214cb Flush queue inside ApplyInitialContents instead of outside 2020-05-07 22:46:42 +01:00
baldurk e902cc8ae4 Add missing filter file for pixel history 2020-05-07 22:46:42 +01:00
Benson Joeris 6b34b9d2fb Make assert on image oldLayout less strict 2020-05-07 22:46:42 +01:00
baldurk 0233d51f71 Pad out block compressed proxy textures to 4x4 multiple on D3D11 2020-05-07 22:46:41 +01:00
baldurk 90c10ea1fc Handle boolean inputs in vulkan shader parameters
* We change to use VarType instead of CompType for signature parameters which
  allows us to represent different types of variables beyond just
  unsigned/signed integer and float.
2020-05-07 22:46:41 +01:00
Aliya Pazylbekova c70929d40a Vk Pixel History: misc fixes incl. fragment count
- Filter events that don't match image view range
- Leave some tests in the original state. Disable depth test and write,
  this causes the individual fragments that failed the depth test to
  show up, but the post modification value for them will be accurate.
- Fix a couple of things: delete TestsFailedCallback, and fix the
  padding
2020-05-07 22:46:19 +01:00
baldurk d0bd2e8da2 Fix calculation of number of rows in block DDS formats. Closes #1870
* The number of rows should be the ceiling of the 4-row number, since any
  overlap becomes a whole extra row of blocks.
2020-05-07 12:37:06 +01:00
baldurk 986fcddc9f When patching descriptors into set, check limits aren't exceeded
* This would be quite an edge case in itself if our added descriptors pushed it
  over the limit, but this is much more likely to happen on drivers where
  update-after-bind descriptor sets have much higher limits than normal
  descriptor sets. We cannot safely use update-after-bind descriptors, so
  instead we check to see if the limits are exceeded and bail out.
2020-05-07 11:11:19 +01:00
baldurk 3006e05d26 Add some marker regions to pixel history 2020-05-06 19:36:14 +01:00
baldurk 343944db61 Fix anisotropy being lost when applying bias to sampler 2020-05-06 19:35:50 +01:00
baldurk 57168d36ad Don't add VkPhysicalDeviceVulkan12Features to pNext chain
* Its presence makes it invalid to have any of the components, rather than
  trying to merge any of them that might be present we can instead just add the
  individual VkPhysicalDeviceBufferDeviceAddressFeatures which is still legal.
2020-05-06 19:35:50 +01:00
baldurk 9d67549407 When enabling API validation register khronos validation layer too 2020-05-06 19:35:50 +01:00
baldurk 25ba64a085 Give better names to anonymous/unnamed variables
* With GLSL anonymous blocks the variable doesn't get a name, but the type does
  get a meaningful name - use that to name the variable.
2020-05-06 19:35:50 +01:00
Aliya Pazylbekova 41b911d1d0 Vk Pixel History: MSAA depth/stencil copy, shader out
Use a separate compute shader module for MSAA copy, and output
directly into the destination buffer instead of creating
staging resources.

Support case where there is no depth stencil attachment to get post mod
values in per fragment reporting. Previously used the original
framebuffer that might not have had depth/stencil view, so couldn't
count the fragments. Now use the sub image.

To get the post mod color, we need to blend with the premod color, so
we use vkCmdCopyImage to copy from the original image.
2020-05-06 19:35:25 +01:00
baldurk 8a4f0a111d Fix out of bounds access if some threads have exited 2020-05-05 20:06:10 +01:00
baldurk f72cabc97a When continuing debug, only count steps where target lane is active 2020-05-05 19:56:54 +01:00
baldurk a0849b7cca Fix scope change of variables entering function call 2020-05-05 19:43:29 +01:00
baldurk a04e2d3517 Try to improve scoping of variable source mappings with no scope info 2020-05-05 19:36:45 +01:00
baldurk 18decf78b2 Treat entry point variables consistently with other functions 2020-05-05 18:59:49 +01:00
baldurk 6f90abb6ab Fix sourcevar declarations for private variables 2020-05-05 17:53:14 +01:00
baldurk bc3b6b9d6c Improve disassembly of continue/break in loops and switches 2020-05-05 17:36:16 +01:00
baldurk 9dbdee0199 Use AllocateMemoryForResource for dummy image/buffer memory
* This makes the allocation more reliable e.g. for cases where the image memory
  can't share with buffer memory.
2020-05-05 17:12:50 +01:00
baldurk df58309f08 Don't render quad instead of fullscreen triangle for sample/math ops 2020-05-05 16:46:00 +01:00
baldurk 84fc7f7950 Fix handling of dynamic buffer offsets in non-debugged stages 2020-05-05 16:24:12 +01:00
Steve Karolewics f312dbba08 Add a D3D12 test for various VS/PS shader linkage scenarios
Fixed a bug that this new test uncovered. There are still several
draw calls that fail in this test, which can be fixed in future changes
2020-05-04 18:44:56 +01:00
jpark37 a8cf6f275e Add IUnknown support to WrappedID3D11Device::OpenSharedResourceInternal 2020-05-04 15:47:35 +01:00
baldurk 007ad9f429 Add spec-required features in 1.2 features struct
* If we add this struct to enable buffer device address we must also enable any
  other features the spec requires.
2020-05-04 13:40:01 +01:00
baldurk 85bd67829c Compile fix for apple, unused lambda capture 2020-04-30 20:28:03 +01:00
baldurk 7512834ed0 Array layer is not needed when querying lod 2020-04-30 19:01:01 +01:00
baldurk b7aeada8c7 Ensure dummy cubemap view has 6 layers visible 2020-04-30 19:00:48 +01:00
baldurk 943515fcbf Fix OpPhi breaking if function call stomped last known block 2020-04-30 18:15:29 +01:00
baldurk 4b45c6be96 Handle naming structs properly 2020-04-30 18:15:29 +01:00