---
title: "makeBinaryArchive(descriptor:)"
framework: metal
role: symbol
role_heading: Instance Method
path: "metal/mtldevice/makebinaryarchive(descriptor:)"
---

# makeBinaryArchive(descriptor:)

Creates a Metal binary archive instance.

## Declaration

```swift
func makeBinaryArchive(descriptor: MTLBinaryArchiveDescriptor) throws -> any MTLBinaryArchive
```

## Parameters

- `descriptor`: An doc://com.apple.metal/documentation/Metal/MTLBinaryArchiveDescriptor instance.

## Mentioned in

Compiling binary archives from a custom configuration script Creating binary archives from device-built pipeline state objects

## See Also

### Creating binary shader archives

- [MTLBinaryArchiveDescriptor](metal/mtlbinaryarchivedescriptor.md)
- [MTLBinaryArchiveError.Code](metal/mtlbinaryarchiveerror-swift.struct/code.md)
- [MTLBinaryArchiveDomain](metal/mtlbinaryarchivedomain.md)
