Matteo Bruni : wined3d: Skip non-color outputs in SM4 shader output mapping.
Alexandre Julliard
julliard at winehq.org
Wed Feb 9 16:03:51 CST 2022
Module: wine
Branch: master
Commit: ee78b46e8a7d139c6f17484c455a1d4ccd3d2ce6
URL: https://source.winehq.org/git/wine.git/?a=commit;h=ee78b46e8a7d139c6f17484c455a1d4ccd3d2ce6
Author: Matteo Bruni <mbruni at codeweavers.com>
Date: Wed Feb 9 16:50:02 2022 +0100
wined3d: Skip non-color outputs in SM4 shader output mapping.
Signed-off-by: Matteo Bruni <mbruni at codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/wined3d/shader_sm4.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/dlls/wined3d/shader_sm4.c b/dlls/wined3d/shader_sm4.c
index 5afe612da21..061ab51d024 100644
--- a/dlls/wined3d/shader_sm4.c
+++ b/dlls/wined3d/shader_sm4.c
@@ -1320,6 +1320,9 @@ static void *shader_sm4_init(const DWORD *byte_code, size_t byte_code_size,
{
struct wined3d_shader_signature_element *e = &output_signature->elements[i];
+ if (priv->shader_version.type == WINED3D_SHADER_TYPE_PIXEL
+ && _strnicmp(e->semantic_name, "SV_TARGET", -1))
+ continue;
if (e->register_idx >= ARRAY_SIZE(priv->output_map))
{
WARN("Invalid output index %u.\n", e->register_idx);
More information about the wine-cvs
mailing list