mirror of
https://github.com/reactos/wine.git
synced 2024-11-29 14:40:56 +00:00
wined3d: Store the source modifiers in struct wined3d_shader_src_param.
This commit is contained in:
parent
b6668b0296
commit
8ac4c98be2
@ -1173,7 +1173,7 @@ static void pshader_hw_tex(const struct wined3d_shader_instruction *ins)
|
|||||||
}
|
}
|
||||||
else if (shader_version < WINED3DPS_VERSION(2,0))
|
else if (shader_version < WINED3DPS_VERSION(2,0))
|
||||||
{
|
{
|
||||||
DWORD src_mod = ins->src[0].token & WINED3DSP_SRCMOD_MASK;
|
DWORD src_mod = ins->src[0].modifiers;
|
||||||
if (src_mod == WINED3DSPSM_DZ) {
|
if (src_mod == WINED3DSPSM_DZ) {
|
||||||
projected = TRUE;
|
projected = TRUE;
|
||||||
} else if(src_mod == WINED3DSPSM_DW) {
|
} else if(src_mod == WINED3DSPSM_DW) {
|
||||||
|
@ -229,6 +229,7 @@ static void shader_parse_src_param(DWORD param, DWORD addr_param, struct wined3d
|
|||||||
src->register_type = ((param & WINED3DSP_REGTYPE_MASK) >> WINED3DSP_REGTYPE_SHIFT)
|
src->register_type = ((param & WINED3DSP_REGTYPE_MASK) >> WINED3DSP_REGTYPE_SHIFT)
|
||||||
| ((param & WINED3DSP_REGTYPE_MASK2) >> WINED3DSP_REGTYPE_SHIFT2);
|
| ((param & WINED3DSP_REGTYPE_MASK2) >> WINED3DSP_REGTYPE_SHIFT2);
|
||||||
src->register_idx = param & WINED3DSP_REGNUM_MASK;
|
src->register_idx = param & WINED3DSP_REGNUM_MASK;
|
||||||
|
src->modifiers = param & WINED3DSP_SRCMOD_MASK;
|
||||||
src->token = param;
|
src->token = param;
|
||||||
src->addr_token = addr_param;
|
src->addr_token = addr_param;
|
||||||
}
|
}
|
||||||
|
@ -2459,7 +2459,7 @@ static void pshader_glsl_tex(const struct wined3d_shader_instruction *ins)
|
|||||||
}
|
}
|
||||||
else if (shader_version < WINED3DPS_VERSION(2,0))
|
else if (shader_version < WINED3DPS_VERSION(2,0))
|
||||||
{
|
{
|
||||||
DWORD src_mod = ins->src[0].token & WINED3DSP_SRCMOD_MASK;
|
DWORD src_mod = ins->src[0].modifiers;
|
||||||
|
|
||||||
if (src_mod == WINED3DSPSM_DZ) {
|
if (src_mod == WINED3DSPSM_DZ) {
|
||||||
sample_flags |= WINED3D_GLSL_SAMPLE_PROJECTED;
|
sample_flags |= WINED3D_GLSL_SAMPLE_PROJECTED;
|
||||||
@ -2559,7 +2559,7 @@ static void pshader_glsl_texcoord(const struct wined3d_shader_instruction *ins)
|
|||||||
ins->dst[0].register_idx, dst_mask);
|
ins->dst[0].register_idx, dst_mask);
|
||||||
} else {
|
} else {
|
||||||
DWORD reg = ins->src[0].register_idx;
|
DWORD reg = ins->src[0].register_idx;
|
||||||
DWORD src_mod = ins->src[0].token & WINED3DSP_SRCMOD_MASK;
|
DWORD src_mod = ins->src[0].modifiers;
|
||||||
char dst_swizzle[6];
|
char dst_swizzle[6];
|
||||||
|
|
||||||
shader_glsl_get_swizzle(ins->src[0].token, FALSE, write_mask, dst_swizzle);
|
shader_glsl_get_swizzle(ins->src[0].token, FALSE, write_mask, dst_swizzle);
|
||||||
|
@ -466,6 +466,7 @@ struct wined3d_shader_src_param
|
|||||||
{
|
{
|
||||||
WINED3DSHADER_PARAM_REGISTER_TYPE register_type;
|
WINED3DSHADER_PARAM_REGISTER_TYPE register_type;
|
||||||
UINT register_idx;
|
UINT register_idx;
|
||||||
|
DWORD modifiers;
|
||||||
DWORD token;
|
DWORD token;
|
||||||
DWORD addr_token;
|
DWORD addr_token;
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user