---
title: MPSImageDescriptor
framework: metalperformanceshaders
role: symbol
role_heading: Class
path: metalperformanceshaders/mpsimagedescriptor
---

# MPSImageDescriptor

A description of the attributes used to create an MPSImage.

## Declaration

```swift
class MPSImageDescriptor
```

## Overview

Overview You use an MPSImageDescriptor to describe and create the properties of an MPSImage such as its size, pixel format and CPU cache mode.

## Topics

### Methods

- [init(channelFormat:width:height:featureChannels:)](metalperformanceshaders/mpsimagedescriptor/init(channelformat:width:height:featurechannels:).md)
- [init(channelFormat:width:height:featureChannels:numberOfImages:usage:)](metalperformanceshaders/mpsimagedescriptor/init(channelformat:width:height:featurechannels:numberofimages:usage:).md)

### Properties

- [width](metalperformanceshaders/mpsimagedescriptor/width.md)
- [height](metalperformanceshaders/mpsimagedescriptor/height.md)
- [featureChannels](metalperformanceshaders/mpsimagedescriptor/featurechannels.md)
- [numberOfImages](metalperformanceshaders/mpsimagedescriptor/numberofimages.md)
- [pixelFormat](metalperformanceshaders/mpsimagedescriptor/pixelformat.md)
- [channelFormat](metalperformanceshaders/mpsimagedescriptor/channelformat.md)
- [cpuCacheMode](metalperformanceshaders/mpsimagedescriptor/cpucachemode.md)
- [storageMode](metalperformanceshaders/mpsimagedescriptor/storagemode.md)
- [usage](metalperformanceshaders/mpsimagedescriptor/usage.md)

### Instance Methods

- [copy(with:)](metalperformanceshaders/mpsimagedescriptor/copy(with:).md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.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

### Initializers

- [init(device:imageDescriptor:)](metalperformanceshaders/mpsimage/init(device:imagedescriptor:).md)
- [init(texture:featureChannels:)](metalperformanceshaders/mpsimage/init(texture:featurechannels:).md)
- [init(parentImage:sliceRange:featureChannels:)](metalperformanceshaders/mpsimage/init(parentimage:slicerange:featurechannels:).md)
