mirror of
https://git.naxdy.org/Mirror/Ryujinx.git
synced 2025-01-05 23:43:04 +00:00
General cleanup
This commit is contained in:
parent
4ec9793602
commit
ccb3b08333
10 changed files with 34 additions and 49 deletions
|
@ -78,20 +78,18 @@ namespace Ryujinx.Graphics.OpenGL
|
|||
{
|
||||
return new PinnedSpan<byte>(IntPtr.Add(ptr, offset).ToPointer(), size);
|
||||
}
|
||||
else if (gd.Capabilities.UsePersistentBufferForFlush)
|
||||
|
||||
if (gd.Capabilities.UsePersistentBufferForFlush)
|
||||
{
|
||||
return PinnedSpan<byte>.UnsafeFromSpan(gd.PersistentBuffers.Default.GetBufferData(buffer, offset, size));
|
||||
}
|
||||
else
|
||||
{
|
||||
IntPtr target = gd.PersistentBuffers.Default.GetHostArray(size);
|
||||
|
||||
gd.Api.BindBuffer(BufferTargetARB.CopyReadBuffer, buffer.ToUInt32());
|
||||
IntPtr target = gd.PersistentBuffers.Default.GetHostArray(size);
|
||||
|
||||
gd.Api.GetBufferSubData(BufferTargetARB.CopyReadBuffer, offset, (uint)size, (void*)target);
|
||||
gd.Api.BindBuffer(BufferTargetARB.CopyReadBuffer, buffer.ToUInt32());
|
||||
gd.Api.GetBufferSubData(BufferTargetARB.CopyReadBuffer, offset, (uint)size, (void*)target);
|
||||
|
||||
return new PinnedSpan<byte>(target.ToPointer(), size);
|
||||
}
|
||||
return new PinnedSpan<byte>(target.ToPointer(), size);
|
||||
}
|
||||
|
||||
public static void Resize(GL api, BufferHandle handle, int size)
|
||||
|
|
|
@ -28,18 +28,18 @@ namespace Ryujinx.Graphics.OpenGL
|
|||
|
||||
gl.Enable(EnableCap.DebugOutputSynchronous);
|
||||
|
||||
if (logLevel == GraphicsDebugLevel.Error)
|
||||
switch (logLevel)
|
||||
{
|
||||
gl.DebugMessageControl(DebugSource.DontCare, DebugType.DebugTypeError, DebugSeverity.DontCare, 0, (uint[])null, true);
|
||||
}
|
||||
else if (logLevel == GraphicsDebugLevel.Slowdowns)
|
||||
{
|
||||
gl.DebugMessageControl(DebugSource.DontCare, DebugType.DebugTypeError, DebugSeverity.DontCare, 0, (uint[])null, true);
|
||||
gl.DebugMessageControl(DebugSource.DontCare, DebugType.DebugTypePerformance, DebugSeverity.DontCare, 0, (uint[])null, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
gl.DebugMessageControl(DebugSource.DontCare, DebugType.DontCare, DebugSeverity.DontCare, 0, (uint[])null, true);
|
||||
case GraphicsDebugLevel.Error:
|
||||
gl.DebugMessageControl(DebugSource.DontCare, DebugType.DebugTypeError, DebugSeverity.DontCare, 0, (uint[])null, true);
|
||||
break;
|
||||
case GraphicsDebugLevel.Slowdowns:
|
||||
gl.DebugMessageControl(DebugSource.DontCare, DebugType.DebugTypeError, DebugSeverity.DontCare, 0, (uint[])null, true);
|
||||
gl.DebugMessageControl(DebugSource.DontCare, DebugType.DebugTypePerformance, DebugSeverity.DontCare, 0, (uint[])null, true);
|
||||
break;
|
||||
default:
|
||||
gl.DebugMessageControl(DebugSource.DontCare, DebugType.DontCare, DebugSeverity.DontCare, 0, (uint[])null, true);
|
||||
break;
|
||||
}
|
||||
|
||||
_counter = 0;
|
||||
|
|
|
@ -127,14 +127,13 @@ namespace Ryujinx.Graphics.OpenGL
|
|||
{
|
||||
return FramebufferAttachment.DepthStencilAttachment;
|
||||
}
|
||||
else if (FormatTable.IsDepthOnly(format))
|
||||
|
||||
if (FormatTable.IsDepthOnly(format))
|
||||
{
|
||||
return FramebufferAttachment.DepthAttachment;
|
||||
}
|
||||
else
|
||||
{
|
||||
return FramebufferAttachment.StencilAttachment;
|
||||
}
|
||||
|
||||
return FramebufferAttachment.StencilAttachment;
|
||||
}
|
||||
|
||||
public int GetColorLayerCount(int index)
|
||||
|
|
|
@ -190,7 +190,7 @@ void main()
|
|||
{
|
||||
uint csHandle = _gd.Api.CreateShader(ShaderType.ComputeShader);
|
||||
|
||||
string[] formatTable = new[] { "r8ui", "r16ui", "r32ui", "rg8ui", "rg16ui", "rg32ui", "rgba8ui", "rgba16ui", "rgba32ui" };
|
||||
string[] formatTable = ["r8ui", "r16ui", "r32ui", "rg8ui", "rg16ui", "rg32ui", "rgba8ui", "rgba16ui", "rgba32ui"];
|
||||
|
||||
string srcFormat = formatTable[srcIndex];
|
||||
string dstFormat = formatTable[dstIndex];
|
||||
|
|
|
@ -64,13 +64,13 @@ namespace Ryujinx.Graphics.OpenGL.Image
|
|||
|
||||
_gd.Api.BindTexture(target, Handle);
|
||||
|
||||
int[] swizzleRgba = new int[]
|
||||
{
|
||||
int[] swizzleRgba =
|
||||
[
|
||||
(int)Info.SwizzleR.Convert(),
|
||||
(int)Info.SwizzleG.Convert(),
|
||||
(int)Info.SwizzleB.Convert(),
|
||||
(int)Info.SwizzleA.Convert(),
|
||||
};
|
||||
(int)Info.SwizzleA.Convert()
|
||||
];
|
||||
|
||||
if (Info.Format == Format.A1B5G5R5Unorm)
|
||||
{
|
||||
|
|
|
@ -76,13 +76,11 @@ namespace Ryujinx.Graphics.OpenGL
|
|||
|
||||
return handle;
|
||||
}
|
||||
else
|
||||
{
|
||||
return Buffer.Create(Api, size);
|
||||
}
|
||||
|
||||
return Buffer.Create(Api, size);
|
||||
}
|
||||
|
||||
public BufferHandle CreateBuffer(int size, GAL.BufferAccess access, BufferHandle storageHint)
|
||||
public BufferHandle CreateBuffer(int size, BufferAccess access, BufferHandle storageHint)
|
||||
{
|
||||
return CreateBuffer(size, access);
|
||||
}
|
||||
|
@ -118,10 +116,8 @@ namespace Ryujinx.Graphics.OpenGL
|
|||
{
|
||||
return new TextureBuffer(this, info);
|
||||
}
|
||||
else
|
||||
{
|
||||
return ResourcePool.GetTextureOrNull(info) ?? new TextureStorage(this, info).CreateDefaultView();
|
||||
}
|
||||
|
||||
return ResourcePool.GetTextureOrNull(info) ?? new TextureStorage(this, info).CreateDefaultView();
|
||||
}
|
||||
|
||||
public ITextureArray CreateTextureArray(int size, bool isBuffer)
|
||||
|
|
|
@ -190,7 +190,7 @@ namespace Ryujinx.Graphics.OpenGL
|
|||
Buffer.Copy(_api, vb.Buffer.Handle, tempVertexBuffer, vb.Buffer.Offset, currentTempVbOffset, vb.Buffer.Size);
|
||||
Buffer.Clear(_api, tempVertexBuffer, currentTempVbOffset + vb.Buffer.Size, (uint)(requiredSize - vb.Buffer.Size), 0);
|
||||
|
||||
_api.BindVertexBuffer((uint)vbIndex, tempVertexBuffer.ToUInt32(), (IntPtr)currentTempVbOffset, (uint)vb.Stride);
|
||||
_api.BindVertexBuffer((uint)vbIndex, tempVertexBuffer.ToUInt32(), currentTempVbOffset, (uint)vb.Stride);
|
||||
|
||||
currentTempVbOffset += requiredSize;
|
||||
_vertexBuffersLimited |= 1u << vbIndex;
|
||||
|
@ -236,7 +236,7 @@ namespace Ryujinx.Graphics.OpenGL
|
|||
|
||||
ref var vb = ref _vertexBuffers[vbIndex];
|
||||
|
||||
_api.BindVertexBuffer((uint)vbIndex, vb.Buffer.Handle.ToUInt32(), (IntPtr)vb.Buffer.Offset, (uint)vb.Stride);
|
||||
_api.BindVertexBuffer((uint)vbIndex, vb.Buffer.Handle.ToUInt32(), vb.Buffer.Offset, (uint)vb.Stride);
|
||||
|
||||
buffersLimited &= ~(1u << vbIndex);
|
||||
}
|
||||
|
|
|
@ -83,7 +83,7 @@ namespace Ryujinx.Graphics.OpenGL
|
|||
{
|
||||
var swappedView = _gd.TextureCopy.BgraSwap(viewConverted);
|
||||
|
||||
viewConverted?.Dispose();
|
||||
viewConverted.Dispose();
|
||||
|
||||
viewConverted = swappedView;
|
||||
}
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
using Ryujinx.Graphics.OpenGL;
|
||||
using Silk.NET.OpenGL.Legacy;
|
||||
using SPB.Graphics;
|
||||
using SPB.Graphics.OpenGL;
|
||||
using SPB.Platform;
|
||||
|
@ -38,9 +37,6 @@ namespace Ryujinx.UI
|
|||
|
||||
context.Initialize(window);
|
||||
context.MakeCurrent(window);
|
||||
|
||||
GL api = GL.GetApi(context.GetProcAddress);
|
||||
|
||||
context.MakeCurrent(null);
|
||||
|
||||
return new SPBOpenGLContext(context, window);
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
using Ryujinx.Graphics.OpenGL;
|
||||
using Silk.NET.OpenGL.Legacy;
|
||||
using SPB.Graphics;
|
||||
using SPB.Graphics.OpenGL;
|
||||
using SPB.Platform;
|
||||
|
@ -38,9 +37,6 @@ namespace Ryujinx.Ava.UI.Renderer
|
|||
|
||||
context.Initialize(window);
|
||||
context.MakeCurrent(window);
|
||||
|
||||
GL api = GL.GetApi(context.GetProcAddress);
|
||||
|
||||
context.MakeCurrent(null);
|
||||
|
||||
return new SPBOpenGLContext(context, window);
|
||||
|
|
Loading…
Reference in a new issue