---
title: instanceDescriptorBuffer
framework: metal
role: symbol
role_heading: Instance Property
path: metal/mtlinstanceaccelerationstructuredescriptor/instancedescriptorbuffer
---

# instanceDescriptorBuffer

A buffer that contains descriptions of each instance in the acceleration structure.

## Declaration

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

## Discussion

Discussion You need to set a buffer before creating the instanced acceleration structure. The buffer needs to contain a list of instance data structures, each defining the characteristics of an instance. The descriptor’s instanceDescriptorType property determines which memory layout to use for the instance data; see MTLAccelerationStructureInstanceDescriptorType for more information.

## See Also

### Specifying the list of instances

- [instanceCount](metal/mtlinstanceaccelerationstructuredescriptor/instancecount.md)
- [instanceDescriptorBufferOffset](metal/mtlinstanceaccelerationstructuredescriptor/instancedescriptorbufferoffset.md)
- [instanceDescriptorStride](metal/mtlinstanceaccelerationstructuredescriptor/instancedescriptorstride.md)
