---
title: buffer
framework: metal
role: symbol
role_heading: Instance Property
path: metal/mtltexture/buffer
---

# buffer

The source buffer used to create this texture, if any.

## Declaration

```swift
var buffer: (any MTLBuffer)? { get }
```

## Discussion

Discussion When this value is nil, another MTLTexture instance provides texture data.

## See Also

### Related Documentation

- [makeTexture(descriptor:offset:bytesPerRow:)](metal/mtlbuffer/maketexture(descriptor:offset:bytesperrow:).md)

### Getting information about ancestor resources

- [parent](metal/mtltexture/parent.md)
- [parentRelativeLevel](metal/mtltexture/parentrelativelevel.md)
- [parentRelativeSlice](metal/mtltexture/parentrelativeslice.md)
- [bufferOffset](metal/mtltexture/bufferoffset.md)
- [bufferBytesPerRow](metal/mtltexture/bufferbytesperrow.md)
- [rootResource](metal/mtltexture/rootresource.md)
