|
|
@@ -252,6 +252,11 @@ namespace Ryujinx.Graphics.Gpu.Engine
|
|
|
UpdateBlendState(state);
|
|
|
}
|
|
|
|
|
|
+ if (state.QueryModified(MethodOffset.LogicOpState))
|
|
|
+ {
|
|
|
+ UpdateLogicOpState(state);
|
|
|
+ }
|
|
|
+
|
|
|
CommitBindings();
|
|
|
}
|
|
|
|
|
|
@@ -875,6 +880,17 @@ namespace Ryujinx.Graphics.Gpu.Engine
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ /// <summary>
|
|
|
+ /// Updates host logical operation state, based on guest state.
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="state">Current GPU state</param>
|
|
|
+ public void UpdateLogicOpState(GpuState state)
|
|
|
+ {
|
|
|
+ LogicalOpState logicOpState = state.Get<LogicalOpState>(MethodOffset.LogicOpState);
|
|
|
+
|
|
|
+ _context.Renderer.Pipeline.SetLogicOpState(logicOpState.Enable, logicOpState.LogicalOp);
|
|
|
+ }
|
|
|
+
|
|
|
/// <summary>
|
|
|
/// Storage buffer address and size information.
|
|
|
/// </summary>
|