Commit Graph

188 Commits

Author SHA1 Message Date
3eb2a3d0e4 tests/shader_runner: Introduce a 'depth-bounds' test option. 2024-09-11 14:53:21 +02:00
b701f8d393 tests/shader_runner: Explicitly require UAV load support.
The used UAV formats are explicitly added in the [require] section of
every test that uses them.

Some of these tests were failing on Intel UHD graphics 770 because of
missing support for additional UAV load types, explicitly requiring
these formats allows these tests to be skipped.
2024-08-22 16:22:18 +02:00
fb153bf5d4 tests/shader_runner: Don't skip shader compilation on missing caps.
Currently we are skipping compilation tests ([* shader] blocks) on
missing capabilities. This is not really necessary and it is useful to
test shader compilation even on machines that can't run these tests.

So, this commit moves the checks to the [test] blocks, skipping them
entirely when caps are not met.

To make the effects of enum test_action values more explicit, these
are renamed to TEST_ACTION_SKIP_COMPILATION and
TEST_ACTION_SKIP_EXECUTION.
2024-08-22 16:01:37 +02:00
19c23ca6f2 tests/shader_runner: Replace spaces with dashes in format names.
Probably good if we want to allow specifying several formats in the same
line, separated by spaces.

While at it, rename "r32g32 int" to "r32g32-sint".
2024-08-22 16:01:37 +02:00
cec62c54ad tests/shader_runner: Move parse_format() up. 2024-08-22 16:01:32 +02:00
164076d176 tests/shader_runner: Require explicit formats for UAV resources.
The current default is r32g32b32a32 but it requires special support
which is not available on all GPUs, so it is not a very convenient
default.

Instead of changing the default making it different from RTV resoures,
the format is required to always be explicit for UAVs.

The exceptions are counter_buffer and buffers with "stride", which don't
require a format because it is already implied.
2024-08-22 16:01:26 +02:00
9dec7403d9 tests/shader-runner: Add missing trace for wave_ops caps. 2024-08-07 15:54:36 +02:00
2efc79bb81 tests: Report tests skipped because of missing capabilities. 2024-08-07 15:54:36 +02:00
947b937a1a tests: Test shade mode. 2024-07-24 16:08:10 +02:00
5a53b73995 tests: Test alpha test. 2024-07-11 17:02:53 +02:00
7e868f1f4b tests: Factor out a set_default_target() helper. 2024-07-11 17:02:45 +02:00
737967604e tests: Implement multisampling in the Vulkan renderer. 2024-07-11 00:33:57 +02:00
fe21318b5f tests/shader_runner: Factor out a resource_desc structure. 2024-07-11 00:33:57 +02:00
fa570ee1f3 tests/shader_runner: Use resource->width instead of resource->size for buffer width. 2024-07-11 00:33:57 +02:00
4f67675a51 tests: Support using the Agility SDK in the crosstests. 2024-07-09 16:57:03 +02:00
d3ba810c98 tests: Stop probing all pixels when drawing a uniform colour.
This is simply unnecessary and wastes time.

As part of this, simply remove the "all" directive. Only for a couple of tests
is it even potentially interesting to validate all pixels (e.g.
nointerpolation.shader_test), and for those "all" is replaced with an explicit
(0, 0, 640, 480) rect.

In all other cases we just probe (0, 0).
2024-06-13 23:55:31 +02:00
7534b88a15 tests/shader-runner: Set the correct flag and format for raw UAVs. 2024-06-11 15:55:48 +02:00
9693271dcf tests: Rename VKD3D_TESTS_SKIP_DXC to VKD3D_TEST_SKIP_DXC.
For consistency with the other VKD3D_TEST_* environment variables.
2024-05-27 21:08:14 +02:00
00b0b8d65c tests/hlsl: Add a geometry shader test. 2024-05-08 21:08:13 +02:00
e6c802e713 tests/shader-runner: Free the hull and domain shader source code. 2024-05-08 21:08:11 +02:00
29786d7efb tests/shader-runner: Add a 'require' directive for wave ops. 2024-05-02 22:18:53 +02:00
c2a787181f tests/hlsl: Add SV_Coverage tests. 2024-04-30 16:32:10 +02:00
0bd6083785 tests/hlsl: Add an SV_InstanceId test. 2024-04-30 16:32:10 +02:00
2b6012df7d tests/shader_runner: Use WIDL_C_INLINE_WRAPPERS. 2024-04-24 23:48:44 +02:00
dbb9cfd958 tests/shader-runner: Report whole-block errors on the block's starting line.
So, if there is an error or a trace on "[pixel shader]" or similar
blocks, they get reported in the line with the tag at the beginning of
the block and no on the line where the next block starts.
2024-04-24 23:47:55 +02:00