Module: wine Branch: master Commit: f9fafb36864f8783f00e0e7164dcbf308231e1ec URL: http://source.winehq.org/git/wine.git/?a=commit;h=f9fafb36864f8783f00e0e7164...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Tue Mar 24 09:38:24 2015 +0100
wined3d: Use the "sysval_semantic" field instead of "semantic_name" to recognize SV_POSITION.
---
dlls/wined3d/glsl_shader.c | 2 +- dlls/wined3d/shader.c | 2 +- include/wine/wined3d.h | 2 ++ 3 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c index 0b307d3..a61d268 100644 --- a/dlls/wined3d/glsl_shader.c +++ b/dlls/wined3d/glsl_shader.c @@ -4167,7 +4167,7 @@ static void shader_glsl_input_pack(const struct wined3d_shader *shader, struct w
if (vertexprocessing == vertexshader) { - if (!strcmp(semantic_name, "SV_POSITION") && !semantic_idx) + if (input->sysval_semantic == WINED3D_SV_POSITION) shader_addline(buffer, "ps_in[%u]%s = vpos%s;\n", shader->u.ps.input_reg_map[input->register_idx], reg_mask, reg_mask); else diff --git a/dlls/wined3d/shader.c b/dlls/wined3d/shader.c index f162fb5..31b391b 100644 --- a/dlls/wined3d/shader.c +++ b/dlls/wined3d/shader.c @@ -1045,7 +1045,7 @@ static HRESULT shader_get_registers_used(struct wined3d_shader *shader, const st { reg_maps->input_registers |= 1 << input_signature->elements[i].register_idx; if (shader_version.type == WINED3D_SHADER_TYPE_PIXEL - && !strcmp(input_signature->elements[i].semantic_name, "SV_POSITION")) + && input_signature->elements[i].sysval_semantic == WINED3D_SV_POSITION) reg_maps->vpos = 1; } } diff --git a/include/wine/wined3d.h b/include/wine/wined3d.h index 2348be8..dcf7212 100644 --- a/include/wine/wined3d.h +++ b/include/wine/wined3d.h @@ -767,6 +767,8 @@ enum wined3d_decl_usage
enum wined3d_sysval_semantic { + WINED3D_SV_POSITION = 1, + WINED3D_SV_DEPTH = 0xffffffff, WINED3D_SV_TARGET0 = 0, WINED3D_SV_TARGET1 = 1,