vkd3d-shader/spirv: Make output varyings not consumed by the next stage private variables.

This commit is contained in:
Zebediah Figura
2023-07-31 12:46:55 -05:00
committed by Alexandre Julliard
parent 11475ef62a
commit d932fba7c3
Notes: Alexandre Julliard 2023-08-03 21:25:28 +09:00
Approved-by: Henri Verbeet (@hverbeet)
Approved-by: Alexandre Julliard (@julliard)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/280
3 changed files with 11 additions and 5 deletions

View File

@@ -4978,6 +4978,12 @@ static void spirv_compiler_emit_output(struct spirv_compiler *compiler,
spirv_compiler_emit_register_execution_mode(compiler, &dst->reg);
}
else if (signature_element->target_location == SIGNATURE_TARGET_LOCATION_UNUSED)
{
storage_class = SpvStorageClassPrivate;
id = spirv_compiler_emit_array_variable(compiler, &builder->global_stream,
storage_class, component_type, output_component_count, array_sizes, 2);
}
else
{
unsigned int location = signature_element->target_location;