---
title: MTLAccelerationStructureMotionInstanceDescriptor
framework: metal
role: symbol
role_heading: Structure
path: metal/mtlaccelerationstructuremotioninstancedescriptor
---

# MTLAccelerationStructureMotionInstanceDescriptor

A description of an instance in an instanced geometry acceleration structure, with the instance including a user identifier and motion data for the instance.

## Declaration

```swift
struct MTLAccelerationStructureMotionInstanceDescriptor
```

## Topics

### Creating an instance descriptor

- [init()](metal/mtlaccelerationstructuremotioninstancedescriptor/init().md)
- [init(options:mask:intersectionFunctionTableOffset:accelerationStructureIndex:userID:motionTransformsStartIndex:motionTransformsCount:motionStartBorderMode:motionEndBorderMode:motionStartTime:motionEndTime:)](metal/mtlaccelerationstructuremotioninstancedescriptor/init(options:mask:intersectionfunctiontableoffset:accelerationstructureindex:userid:motiontransformsstartindex:motiontransformscount:motionstartbordermode:motionendbordermode:motionstarttime:motionendtime:).md)

### Specifying the instance

- [accelerationStructureIndex](metal/mtlaccelerationstructuremotioninstancedescriptor/accelerationstructureindex.md)

### Specifying motion data

- [motionStartTime](metal/mtlaccelerationstructuremotioninstancedescriptor/motionstarttime.md)
- [motionEndTime](metal/mtlaccelerationstructuremotioninstancedescriptor/motionendtime.md)
- [motionStartBorderMode](metal/mtlaccelerationstructuremotioninstancedescriptor/motionstartbordermode.md)
- [motionEndBorderMode](metal/mtlaccelerationstructuremotioninstancedescriptor/motionendbordermode.md)
- [motionTransformsStartIndex](metal/mtlaccelerationstructuremotioninstancedescriptor/motiontransformsstartindex.md)
- [motionTransformsCount](metal/mtlaccelerationstructuremotioninstancedescriptor/motiontransformscount.md)

### Customizing intersection and hit tests for the instance

- [intersectionFunctionTableOffset](metal/mtlaccelerationstructuremotioninstancedescriptor/intersectionfunctiontableoffset.md)
- [options](metal/mtlaccelerationstructuremotioninstancedescriptor/options.md)
- [mask](metal/mtlaccelerationstructuremotioninstancedescriptor/mask.md)

### Specifying the user identifier

- [userID](metal/mtlaccelerationstructuremotioninstancedescriptor/userid.md)

## Relationships

### Conforms To

- [BitwiseCopyable](swift/bitwisecopyable.md)
- [Sendable](swift/sendable.md)

## See Also

### Instance descriptors

- [MTLAccelerationStructureInstanceDescriptor](metal/mtlaccelerationstructureinstancedescriptor.md)
- [MTLAccelerationStructureUserIDInstanceDescriptor](metal/mtlaccelerationstructureuseridinstancedescriptor.md)
- [MTLAccelerationStructureInstanceOptions](metal/mtlaccelerationstructureinstanceoptions.md)
- [MTL4IndirectInstanceAccelerationStructureDescriptor](metal/mtl4indirectinstanceaccelerationstructuredescriptor.md)
- [MTLIndirectInstanceAccelerationStructureDescriptor](metal/mtlindirectinstanceaccelerationstructuredescriptor.md)
- [MTLIndirectAccelerationStructureInstanceDescriptor](metal/mtlindirectaccelerationstructureinstancedescriptor.md)
- [MTLIndirectAccelerationStructureMotionInstanceDescriptor](metal/mtlindirectaccelerationstructuremotioninstancedescriptor.md)
