---
title: MTLAccelerationStructureDescriptor
framework: metal
role: symbol
role_heading: Class
path: metal/mtlaccelerationstructuredescriptor
---

# MTLAccelerationStructureDescriptor

A base class for classes that define the configuration for a new acceleration structure.

## Declaration

```swift
class MTLAccelerationStructureDescriptor
```

## Overview

Overview This is the base class for other acceleration structure descriptors. Don’t use this class directly. Use one of the derived classes instead, as MTLAccelerationStructure describes.

## Topics

### Specifying usage options

- [usage](metal/mtlaccelerationstructuredescriptor/usage.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Inherited By

- [MTL4AccelerationStructureDescriptor](metal/mtl4accelerationstructuredescriptor.md)
- [MTLIndirectInstanceAccelerationStructureDescriptor](metal/mtlindirectinstanceaccelerationstructuredescriptor.md)
- [MTLInstanceAccelerationStructureDescriptor](metal/mtlinstanceaccelerationstructuredescriptor.md)
- [MTLPrimitiveAccelerationStructureDescriptor](metal/mtlprimitiveaccelerationstructuredescriptor.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Acceleration structures

- [Improving ray-tracing data access using per-primitive data](metal/improving-ray-tracing-data-access-using-per-primitive-data.md)
- [MTLAccelerationStructure](metal/mtlaccelerationstructure.md)
- [MTL4AccelerationStructureDescriptor](metal/mtl4accelerationstructuredescriptor.md)
- [MTL4PrimitiveAccelerationStructureDescriptor](metal/mtl4primitiveaccelerationstructuredescriptor.md)
- [MTLPrimitiveAccelerationStructureDescriptor](metal/mtlprimitiveaccelerationstructuredescriptor.md)
- [MTL4InstanceAccelerationStructureDescriptor](metal/mtl4instanceaccelerationstructuredescriptor.md)
- [MTLInstanceAccelerationStructureDescriptor](metal/mtlinstanceaccelerationstructuredescriptor.md)
- [MTLAccelerationStructureCommandEncoder](metal/mtlaccelerationstructurecommandencoder.md)
- [MTLAccelerationStructureUsage](metal/mtlaccelerationstructureusage.md)
- [MTLAccelerationStructureRefitOptions](metal/mtlaccelerationstructurerefitoptions.md)
