Giovanni Mascellani (@giomasce) commented about tests/shader_runner.c:
memset(runner, 0, sizeof(*runner)); runner->ops = ops; - runner->minimum_shader_model = minimum_shader_model; - runner->maximum_shader_model = maximum_shader_model; + + runner->current_shader_model = model; + + /* Default shader models. */ + skip_tests = true; + if (runner->current_shader_model == SHADER_MODEL_2_0) + skip_tests = false; + if (runner->current_shader_model == SHADER_MODEL_4_0) + skip_tests = false; + if (runner->current_shader_model == SHADER_MODEL_6_0) + skip_tests = false;
This means that you have to declare the standard shaders models as soon as you have a `[require]` directive, even it was just for other settings. Rather, I'd say that we want to first parse the whole `[require]` block and, if no shader model is requested, use the default; otherwise, use the requested ones. -- https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/434#note_51317