---
title: encodedLength
framework: metal
role: symbol
role_heading: Instance Property
path: metal/mtlargumentencoder/encodedlength
---

# encodedLength

The number of bytes required to store the encoded resources of an argument buffer.

## Declaration

```swift
var encodedLength: Int { get }
```

## Discussion

Discussion After creating an MTLArgumentEncoder instance, use this value to create the MTLBuffer instance that represents an argument buffer. id <MTLArgumentEncoder> encoder = [_function newArgumentEncoderWithBufferIndex:0]; id <MTLBuffer> buffer = [_device newBufferWithLength:encoder.encodedLength options:_options]; [encoder setArgumentBuffer:buffer offset:0];

## See Also

### Creating an argument buffer

- [setArgumentBuffer(_:offset:)](metal/mtlargumentencoder/setargumentbuffer(_:offset:).md)
- [setArgumentBuffer(_:startOffset:arrayElement:)](metal/mtlargumentencoder/setargumentbuffer(_:startoffset:arrayelement:).md)
