<!--
{
  "availability" : [
    "iOS: 11.0.0 -",
    "iPadOS: 11.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 10.13.0 -",
    "tvOS: 11.0.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Metal",
  "identifier" : "/documentation/Metal/MTLSamplerDescriptor/supportArgumentBuffers",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Property",
  "symbol" : {
    "kind" : "Instance Property",
    "modules" : [
      "Metal"
    ],
    "preciseIdentifier" : "c:objc(cs)MTLSamplerDescriptor(py)supportArgumentBuffers"
  },
  "title" : "supportArgumentBuffers"
}
-->

# supportArgumentBuffers

A Boolean value that indicates whether you can reference a sampler, that you make
with this descriptor, by its resource ID from an argument buffer.

```
var supportArgumentBuffers: Bool { get set }
```

## Discussion

The default value is  <doc://com.apple.documentation/documentation/Swift/false>,
which means that you can only encode the samplers you make with this descriptor
as individual resources in the sampler state argument table.

Your app can encode samplers into an argument buffer if you create them with
an [`MTLSamplerDescriptor`](/documentation/Metal/MTLSamplerDescriptor) instance that has this property equal to
<doc://com.apple.documentation/documentation/Swift/true>.

> Tip: Check ``doc://com.apple.metal/documentation/Metal/MTLDevice/maxArgumentBufferSamplerCount`` at runtime to query
> the number of samplers your app can encode into an argument buffer.

Each unique configuration of an [`MTLSamplerDescriptor`](/documentation/Metal/MTLSamplerDescriptor) instance’s properties
creates a unique [`MTLSamplerState`](/documentation/Metal/MTLSamplerState) instance.
For example, you can create unique samplers with the same
[`MTLSamplerDescriptor`](/documentation/Metal/MTLSamplerDescriptor) instance by changing one or more values of its properties,
such as [`minFilter`](/documentation/Metal/MTLSamplerDescriptor/minFilter) or [`magFilter`](/documentation/Metal/MTLSamplerDescriptor/magFilter) before creating another instance.

Conversely, creating secondary sampler instances with the same descriptor property
values doesn’t create any additional, unique samplers.
Instead, they refer to the same underlying sampler, even if you create it with
a difference descriptor instance because the configuration is the same.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)