---
title: MTLDrawPatchIndirectArguments
framework: metal
role: symbol
role_heading: Structure
path: metal/mtldrawpatchindirectarguments
---

# MTLDrawPatchIndirectArguments

The data layout required for drawing patches via indirect buffer calls.

## Declaration

```swift
struct MTLDrawPatchIndirectArguments
```

## Mentioned in

Specifying drawing and dispatch arguments indirectly

## Overview

Overview See also the following methods: drawPatches(numberOfPatchControlPoints:patchIndexBuffer:patchIndexBufferOffset:indirectBuffer:indirectBufferOffset:) drawIndexedPatches(numberOfPatchControlPoints:patchIndexBuffer:patchIndexBufferOffset:controlPointIndexBuffer:controlPointIndexBufferOffset:indirectBuffer:indirectBufferOffset:)

## Topics

### Initializers

- [init()](metal/mtldrawpatchindirectarguments/init().md)
- [init(patchCount:instanceCount:patchStart:baseInstance:)](metal/mtldrawpatchindirectarguments/init(patchcount:instancecount:patchstart:baseinstance:).md)

### Instance Properties

- [baseInstance](metal/mtldrawpatchindirectarguments/baseinstance.md)
- [instanceCount](metal/mtldrawpatchindirectarguments/instancecount.md)
- [patchCount](metal/mtldrawpatchindirectarguments/patchcount.md)
- [patchStart](metal/mtldrawpatchindirectarguments/patchstart.md)

## Relationships

### Conforms To

- [BitwiseCopyable](swift/bitwisecopyable.md)
- [Sendable](swift/sendable.md)

## See Also

### Render compute commands

- [MTLIndirectRenderCommand](metal/mtlindirectrendercommand.md)
- [MTLDrawPrimitivesIndirectArguments](metal/mtldrawprimitivesindirectarguments.md)
- [MTLDrawIndexedPrimitivesIndirectArguments](metal/mtldrawindexedprimitivesindirectarguments.md)
