| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- using Ryujinx.Graphics.GAL;
- using Ryujinx.Graphics.Gpu.Engine.Threed;
- namespace Ryujinx.Graphics.Gpu.Shader
- {
- /// <summary>
- /// State used by the <see cref="GpuAccessor"/>.
- /// </summary>
- struct GpuChannelGraphicsState
- {
- // New fields should be added to the end of the struct to keep disk shader cache compatibility.
- /// <summary>
- /// Early Z force enable.
- /// </summary>
- public readonly bool EarlyZForce;
- /// <summary>
- /// Primitive topology of current draw.
- /// </summary>
- public readonly PrimitiveTopology Topology;
- /// <summary>
- /// Tessellation mode.
- /// </summary>
- public readonly TessMode TessellationMode;
- /// <summary>
- /// Indicates whenever the viewport transform is disabled.
- /// </summary>
- public readonly bool ViewportTransformDisable;
- /// <summary>
- /// Indicates whenever alpha-to-coverage is enabled.
- /// </summary>
- public readonly bool AlphaToCoverageEnable;
- /// <summary>
- /// Indicates whenever alpha-to-coverage dithering is enabled.
- /// </summary>
- public readonly bool AlphaToCoverageDitherEnable;
- /// <summary>
- /// Creates a new GPU graphics state.
- /// </summary>
- /// <param name="earlyZForce">Early Z force enable</param>
- /// <param name="topology">Primitive topology</param>
- /// <param name="tessellationMode">Tessellation mode</param>
- /// <param name="viewportTransformDisable">Indicates whenever the viewport transform is disabled</param>
- /// <param name="alphaToCoverageEnable">Indicates whenever alpha-to-coverage is enabled</param>
- /// <param name="alphaToCoverageDitherEnable">Indicates whenever alpha-to-coverage dithering is enabled</param>
- public GpuChannelGraphicsState(
- bool earlyZForce,
- PrimitiveTopology topology,
- TessMode tessellationMode,
- bool viewportTransformDisable,
- bool alphaToCoverageEnable,
- bool alphaToCoverageDitherEnable)
- {
- EarlyZForce = earlyZForce;
- Topology = topology;
- TessellationMode = tessellationMode;
- ViewportTransformDisable = viewportTransformDisable;
- AlphaToCoverageEnable = alphaToCoverageEnable;
- AlphaToCoverageDitherEnable = alphaToCoverageDitherEnable;
- }
- }
- }
|