[PATCH 3/5] wined3d: Skip non-color outputs in SM4 shader output mapping.
Matteo Bruni
mbruni at codeweavers.com
Wed Feb 9 09:50:02 CST 2022
Signed-off-by: Matteo Bruni <mbruni at codeweavers.com>
---
Seen in an Hellblade: Senua's Sacrifice log and elsewhere.
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);
--
2.34.1
More information about the wine-devel
mailing list