mirror of
https://github.com/Ryujinx/Ryujinx.git
synced 2025-07-01 11:30:48 -07:00
Initial work
This commit is contained in:
27
Ryujinx.Graphics.OpenGL/Converters/StencilOpConverter.cs
Normal file
27
Ryujinx.Graphics.OpenGL/Converters/StencilOpConverter.cs
Normal file
@ -0,0 +1,27 @@
|
||||
using OpenTK.Graphics.OpenGL;
|
||||
using System;
|
||||
|
||||
namespace Ryujinx.Graphics.OpenGL
|
||||
{
|
||||
static class StencilOpConverter
|
||||
{
|
||||
public static StencilOp Convert(this GAL.DepthStencil.StencilOp op)
|
||||
{
|
||||
switch (op)
|
||||
{
|
||||
case GAL.DepthStencil.StencilOp.Keep: return StencilOp.Keep;
|
||||
case GAL.DepthStencil.StencilOp.Zero: return StencilOp.Zero;
|
||||
case GAL.DepthStencil.StencilOp.Replace: return StencilOp.Replace;
|
||||
case GAL.DepthStencil.StencilOp.IncrementAndClamp: return StencilOp.Incr;
|
||||
case GAL.DepthStencil.StencilOp.DecrementAndClamp: return StencilOp.Decr;
|
||||
case GAL.DepthStencil.StencilOp.Invert: return StencilOp.Invert;
|
||||
case GAL.DepthStencil.StencilOp.IncrementAndWrap: return StencilOp.IncrWrap;
|
||||
case GAL.DepthStencil.StencilOp.DecrementAndWrap: return StencilOp.DecrWrap;
|
||||
}
|
||||
|
||||
return StencilOp.Keep;
|
||||
|
||||
throw new ArgumentException($"Invalid stencil operation \"{op}\".");
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user