vkd3d-shader/d3dbc: Translate sm1 fragment outputs to system values.

This commit is contained in:
Zebediah Figura 2023-09-20 13:19:04 -05:00 committed by Alexandre Julliard
parent 1615e5a76b
commit 9417c7cfb7
Notes: Alexandre Julliard 2023-09-21 22:01:59 +02:00
Approved-by: Giovanni Mascellani (@giomasce)
Approved-by: Henri Verbeet (@hverbeet)
Approved-by: Alexandre Julliard (@julliard)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/356
2 changed files with 6 additions and 6 deletions

View File

@ -597,7 +597,7 @@ static bool add_signature_element_from_register(struct vkd3d_shader_sm1_parser *
case VKD3DSPR_TEMP: case VKD3DSPR_TEMP:
if (sm1->p.shader_version.type == VKD3D_SHADER_TYPE_PIXEL if (sm1->p.shader_version.type == VKD3D_SHADER_TYPE_PIXEL
&& sm1->p.shader_version.major == 1 && !register_index) && sm1->p.shader_version.major == 1 && !register_index)
return add_signature_element(sm1, true, "COLOR", 0, VKD3D_SHADER_SV_NONE, 0, is_dcl, mask); return add_signature_element(sm1, true, "COLOR", 0, VKD3D_SHADER_SV_TARGET, 0, is_dcl, mask);
return true; return true;
case VKD3DSPR_INPUT: case VKD3DSPR_INPUT:
@ -641,11 +641,11 @@ static bool add_signature_element_from_register(struct vkd3d_shader_sm1_parser *
case VKD3DSPR_COLOROUT: case VKD3DSPR_COLOROUT:
return add_signature_element(sm1, true, "COLOR", register_index, return add_signature_element(sm1, true, "COLOR", register_index,
VKD3D_SHADER_SV_NONE, register_index, is_dcl, mask); VKD3D_SHADER_SV_TARGET, register_index, is_dcl, mask);
case VKD3DSPR_DEPTHOUT: case VKD3DSPR_DEPTHOUT:
return add_signature_element(sm1, true, "DEPTH", 0, return add_signature_element(sm1, true, "DEPTH", 0,
VKD3D_SHADER_SV_NONE, register_index, is_dcl, 0x1); VKD3D_SHADER_SV_DEPTH, register_index, is_dcl, 0x1);
case VKD3DSPR_RASTOUT: case VKD3DSPR_RASTOUT:
switch (register_index) switch (register_index)

View File

@ -587,7 +587,7 @@ static void test_scan_signatures(void)
static const struct vkd3d_shader_signature_element ps2_outputs[] = static const struct vkd3d_shader_signature_element ps2_outputs[] =
{ {
{"COLOR", 0, 0, VKD3D_SHADER_SV_NONE, VKD3D_SHADER_COMPONENT_FLOAT, 0, 0xf, 0xf}, {"COLOR", 0, 0, VKD3D_SHADER_SV_TARGET, VKD3D_SHADER_COMPONENT_FLOAT, 0, 0xf, 0xf},
}; };
static const char ps3_source[] = static const char ps3_source[] =
@ -609,8 +609,8 @@ static void test_scan_signatures(void)
static const struct vkd3d_shader_signature_element ps3_outputs[] = static const struct vkd3d_shader_signature_element ps3_outputs[] =
{ {
{"COLOR", 0, 0, VKD3D_SHADER_SV_NONE, VKD3D_SHADER_COMPONENT_FLOAT, 0, 0xf, 0xf}, {"COLOR", 0, 0, VKD3D_SHADER_SV_TARGET, VKD3D_SHADER_COMPONENT_FLOAT, 0, 0xf, 0xf},
{"DEPTH", 0, 0, VKD3D_SHADER_SV_NONE, VKD3D_SHADER_COMPONENT_FLOAT, 0, 0x1, 0x1}, {"DEPTH", 0, 0, VKD3D_SHADER_SV_DEPTH, VKD3D_SHADER_COMPONENT_FLOAT, 0, 0x1, 0x1},
}; };
static const char ps4_source[] = static const char ps4_source[] =