wined3d: Read transform flags from the compile args in pshader_hw_texm3x3spec().
This commit is contained in:
parent
8f5bb62769
commit
5e24ccfd0c
|
@ -2200,8 +2200,8 @@ static void pshader_hw_texm3x3vspec(const struct wined3d_shader_instruction *ins
|
||||||
static void pshader_hw_texm3x3spec(const struct wined3d_shader_instruction *ins)
|
static void pshader_hw_texm3x3spec(const struct wined3d_shader_instruction *ins)
|
||||||
{
|
{
|
||||||
IWineD3DBaseShaderImpl *shader = (IWineD3DBaseShaderImpl *)ins->ctx->shader;
|
IWineD3DBaseShaderImpl *shader = (IWineD3DBaseShaderImpl *)ins->ctx->shader;
|
||||||
IWineD3DDeviceImpl *deviceImpl = (IWineD3DDeviceImpl *)shader->baseShader.device;
|
|
||||||
SHADER_PARSE_STATE *current_state = &shader->baseShader.parse_state;
|
SHADER_PARSE_STATE *current_state = &shader->baseShader.parse_state;
|
||||||
|
struct shader_arb_ctx_priv *priv = ins->ctx->backend_data;
|
||||||
DWORD flags;
|
DWORD flags;
|
||||||
DWORD reg = ins->dst[0].reg.idx;
|
DWORD reg = ins->dst[0].reg.idx;
|
||||||
struct wined3d_shader_buffer *buffer = ins->ctx->buffer;
|
struct wined3d_shader_buffer *buffer = ins->ctx->buffer;
|
||||||
|
@ -2234,7 +2234,7 @@ static void pshader_hw_texm3x3spec(const struct wined3d_shader_instruction *ins)
|
||||||
|
|
||||||
/* Sample the texture using the calculated coordinates */
|
/* Sample the texture using the calculated coordinates */
|
||||||
shader_arb_get_dst_param(ins, &ins->dst[0], dst_str);
|
shader_arb_get_dst_param(ins, &ins->dst[0], dst_str);
|
||||||
flags = reg < MAX_TEXTURES ? deviceImpl->stateBlock->state.texture_states[reg][WINED3DTSS_TEXTURETRANSFORMFLAGS] : 0;
|
flags = reg < MAX_TEXTURES ? priv->cur_ps_args->super.tex_transform >> reg * WINED3D_PSARGS_TEXTRANSFORM_SHIFT : 0;
|
||||||
shader_hw_sample(ins, reg, dst_str, dst_reg, flags & WINED3DTTFF_PROJECTED ? TEX_PROJ : 0, NULL, NULL);
|
shader_hw_sample(ins, reg, dst_str, dst_reg, flags & WINED3DTTFF_PROJECTED ? TEX_PROJ : 0, NULL, NULL);
|
||||||
current_state->current_row = 0;
|
current_state->current_row = 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue