Commit e893e6e2 authored by Nikolay Sivov's avatar Nikolay Sivov Committed by Alexandre Julliard

d3d10/effect: Set state block masks for state variables.

parent 47350f36
......@@ -4157,6 +4157,12 @@ static HRESULT STDMETHODCALLTYPE d3d10_effect_pass_ComputeStateBlockMask(ID3D10E
D3D10StateBlockMaskEnableCapture(mask, D3D10_DST_PS, 0, 1);
if (pass->gs.shader != &null_shader_variable)
D3D10StateBlockMaskEnableCapture(mask, D3D10_DST_GS, 0, 1);
if (pass->rasterizer)
D3D10StateBlockMaskEnableCapture(mask, D3D10_DST_RS_RASTERIZER_STATE, 0, 1);
if (pass->depth_stencil)
D3D10StateBlockMaskEnableCapture(mask, D3D10_DST_OM_DEPTH_STENCIL_STATE, 0, 1);
if (pass->blend)
D3D10StateBlockMaskEnableCapture(mask, D3D10_DST_OM_BLEND_STATE, 0, 1);
return S_OK;
}
......
......@@ -4331,13 +4331,10 @@ static void test_effect_state_groups(void)
hr = pass->lpVtbl->ComputeStateBlockMask(pass, &mask);
ok(hr == S_OK, "Unexpected hr %#x.\n", hr);
ret = D3D10StateBlockMaskGetSetting(&mask, D3D10_DST_RS_RASTERIZER_STATE, 0);
todo_wine
ok(ret, "Unexpected mask.\n");
ret = D3D10StateBlockMaskGetSetting(&mask, D3D10_DST_OM_DEPTH_STENCIL_STATE, 0);
todo_wine
ok(ret, "Unexpected mask.\n");
ret = D3D10StateBlockMaskGetSetting(&mask, D3D10_DST_OM_BLEND_STATE, 0);
todo_wine
ok(ret, "Unexpected mask.\n");
hr = pass->lpVtbl->Apply(pass, 0);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment