Vertex shader output Red for view 0, Green for view 1, fragment shader does not use viewIndex.
Fragment shader output Red for view 0, Green for view 1, vertex shader does not use viewIndex.
Geometry shader output Red for view 0, Green for view 1, vertex and fragment shader do not use viewIndex.
Python checks vertex and pixel shader debug output against replay rendering output
DebugShaderInputs struct contains existing the parameters:
sample
primitive
and a new parameter
view
Default constructor for DebugShaderInputs sets the parameters to NoPreference (~0U).
The argument buffers are used fully used with no spare bytes
The python test iterates over every draw to check the replay has a valid output target count
This verifies the replay did not crash when replaying ExecuteIndirect with multiple draws and an argument buffer with no spare bytes
1000 drawcalls of 1 instance of 1 triangle
1 drawcall of 1000 instances of 1 triangle
Python tests verify the count of modifications is correct, the modifications are self-consistent and the picked texture value matches the final modifications tex after value
CreateTexture2D(), CreateTexture2D1(), CreateBuffer() should fail
CheckFeatureSupport() with D3D11_FEATURE_DATA_D3D11_OPTIONS1 or D3D11_FEATURE_DATA_D3D11_OPTIONS2 should return D3D11_TILED_RESOURCES_NOT_SUPPORTED
Check the post mod stencil at pixel location 110,100
Check the post mod stencil is unknown at pixel location 275, 260 for fragment zero of a multi-fragment event
Validate that in a fragment event the postMod stencil value should be unknown (-1 or -2)
This test validates the code change in 4815adaa83
Check the post mod stencil at pixel location 110,100
Check the post mod stencil is unknown at pixel location 275, 260 for fragment zero of a multi-fragment event
Validate that in a fragment event the postMod stencil value should be unknown (-1 or -2)
It's currently forcibly disabled via 'check_support' because it's known
to fail due to the fact that the commands are always serialised and
replayed in submission order instead of the order that respects queues
blocked on fence waits that get signalled later from other queues.
New Binding 3
Initial size is UINT32_MAX
Updated to be sized DESC_ARRAY3_SIZE
Used in the shader to ensure the binding is referenced
Stress tests the FetchShaderFeedback code when it computes the maximum size of feedbackStorageSize.
* We need to check for map writes even if the mapped buffer isn't the one that's
referenced by a submit but still overlaps it. We do this by moving to the heap
for all placed resources so any map to a buffer on a heap is checked as long
as any buffer bound to that heap is referenced.
* When debugging a pixel or doing quad overdraw we replace the pixel shader and
patch in our own UAV. Previously we were moving other UAVs out of the way that
were visible to the pixel shader, but this fails if a UAV is visible to all
stages and used in a vertex stage.
* Now instead for pixel shader inputs we pick a free space and use it. For quad
overdraw we pick an arbitrary high space to hopefully use the precompiled
shader, and if it's somehow not free we recompile the shader with a free
space.
* Ideally we would also include mesh output here, but we would need a way to
clear the postvs cache every so often to avoid bloating, otherwise it will
generate too much data iterating the whole capture.