Support configurable point size (#916)
This commit is contained in:
@@ -161,6 +161,11 @@ namespace Ryujinx.Graphics.Gpu.Engine
|
||||
UpdateVertexAttribState(state);
|
||||
}
|
||||
|
||||
if (state.QueryModified(MethodOffset.PointSize))
|
||||
{
|
||||
UpdatePointSizeState(state);
|
||||
}
|
||||
|
||||
if (state.QueryModified(MethodOffset.PrimitiveRestartState))
|
||||
{
|
||||
UpdatePrimitiveRestartState(state);
|
||||
@@ -507,6 +512,17 @@ namespace Ryujinx.Graphics.Gpu.Engine
|
||||
_context.Renderer.Pipeline.SetVertexAttribs(vertexAttribs);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Updates host point size based on guest GPU state.
|
||||
/// </summary>
|
||||
/// <param name="state">Current GPU state</param>
|
||||
private void UpdatePointSizeState(GpuState state)
|
||||
{
|
||||
float size = state.Get<float>(MethodOffset.PointSize);
|
||||
|
||||
_context.Renderer.Pipeline.SetPointSize(size);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Updates host primitive restart based on guest GPU state.
|
||||
/// </summary>
|
||||
|
@@ -53,6 +53,7 @@ namespace Ryujinx.Graphics.Gpu.State
|
||||
YControl = 0x4eb,
|
||||
FirstVertex = 0x50d,
|
||||
FirstInstance = 0x50e,
|
||||
PointSize = 0x546,
|
||||
ResetCounter = 0x54c,
|
||||
RtDepthStencilEnable = 0x54e,
|
||||
ConditionState = 0x554,
|
||||
|
Reference in New Issue
Block a user