diff --git a/src/Ryujinx.Graphics.Metal/IndexBufferState.cs b/src/Ryujinx.Graphics.Metal/IndexBufferState.cs
index 9eaaf9a197..7cd2ff42e8 100644
--- a/src/Ryujinx.Graphics.Metal/IndexBufferState.cs
+++ b/src/Ryujinx.Graphics.Metal/IndexBufferState.cs
@@ -6,7 +6,7 @@ using System.Runtime.Versioning;
 namespace Ryujinx.Graphics.Metal
 {
     [SupportedOSPlatform("macos")]
-    internal struct IndexBufferState
+    readonly internal struct IndexBufferState
     {
         public static IndexBufferState Null => new(BufferHandle.Null, 0, 0);
 
@@ -16,7 +16,7 @@ namespace Ryujinx.Graphics.Metal
 
         private readonly BufferHandle _handle;
 
-        public IndexBufferState(BufferHandle handle, int offset, int size, IndexType type)
+        public IndexBufferState(BufferHandle handle, int offset, int size, IndexType type = IndexType.UInt)
         {
             _handle = handle;
             _offset = offset;
@@ -24,14 +24,6 @@ namespace Ryujinx.Graphics.Metal
             _type = type;
         }
 
-        public IndexBufferState(BufferHandle handle, int offset, int size)
-        {
-            _handle = handle;
-            _offset = offset;
-            _size = size;
-            _type = IndexType.UInt;
-        }
-
         public (MTLBuffer, int, MTLIndexType) GetIndexBuffer(MetalRenderer renderer, CommandBufferScoped cbs)
         {
             Auto<DisposableBuffer> autoBuffer;
diff --git a/src/Ryujinx.Graphics.Metal/VertexBufferState.cs b/src/Ryujinx.Graphics.Metal/VertexBufferState.cs
index 277366b898..6591fe6d65 100644
--- a/src/Ryujinx.Graphics.Metal/VertexBufferState.cs
+++ b/src/Ryujinx.Graphics.Metal/VertexBufferState.cs
@@ -6,7 +6,7 @@ using System.Runtime.Versioning;
 namespace Ryujinx.Graphics.Metal
 {
     [SupportedOSPlatform("macos")]
-    internal struct VertexBufferState
+    readonly internal struct VertexBufferState
     {
         public static VertexBufferState Null => new(BufferHandle.Null, 0, 0, 0);