WIP V2: Experimental: Metal backend #441

Merged
GreemDev merged 369 commits from new-metal into master 2024-12-24 06:55:16 +00:00
2 changed files with 8 additions and 5 deletions
Showing only changes of commit 5a802a550b - Show all commits

View File

@ -204,11 +204,14 @@ namespace Ryujinx.Graphics.Metal
MTLBuffer mtlBuffer = new(Unsafe.As<BufferHandle, IntPtr>(ref buffer)); MTLBuffer mtlBuffer = new(Unsafe.As<BufferHandle, IntPtr>(ref buffer));
var span = new Span<byte>(mtlBuffer.Contents.ToPointer(), (int)mtlBuffer.Length); var span = new Span<byte>(mtlBuffer.Contents.ToPointer(), (int)mtlBuffer.Length);
data.CopyTo(span[offset..]); data.CopyTo(span[offset..]);
mtlBuffer.DidModifyRange(new NSRange if (mtlBuffer.StorageMode == MTLStorageMode.Managed)
{ {
location = (ulong)offset, mtlBuffer.DidModifyRange(new NSRange
length = (ulong)data.Length {
}); location = (ulong)offset,
length = (ulong)data.Length
});
}
} }
public void UpdateCounters() public void UpdateCounters()

View File

@ -15,7 +15,7 @@ namespace Ryujinx.Graphics.Metal
{ {
// 0 Frames = No capture // 0 Frames = No capture
// Some games like Undertale trigger a stack overflow on capture end // Some games like Undertale trigger a stack overflow on capture end
private const int MaxFramesPerCapture = 5; private const int MaxFramesPerCapture = 0;
private const string CaptureLocation = "/Users/isaacmarovitz/Desktop/Captures/Trace-"; private const string CaptureLocation = "/Users/isaacmarovitz/Desktop/Captures/Trace-";
private readonly MTLDevice _device; private readonly MTLDevice _device;