diff --git a/src/d3d11/d3d11_context_imm.cpp b/src/d3d11/d3d11_context_imm.cpp index 2f827d4d6..6703a661f 100644 --- a/src/d3d11/d3d11_context_imm.cpp +++ b/src/d3d11/d3d11_context_imm.cpp @@ -621,7 +621,10 @@ namespace dxvk { if (!pState) return; - + + // Reset all state affected by the current context state + ResetCommandListState(); + Com oldState = std::move(m_stateObject); Com newState = static_cast(pState); @@ -636,6 +639,7 @@ namespace dxvk { oldState->SetState(m_state); newState->GetState(m_state); + // Restore all state affected by the new context state RestoreCommandListState(); }