<!--
{
  "availability" : [
    "iOS: -",
    "iPadOS: -",
    "macCatalyst: -",
    "macOS: -",
    "tvOS: -",
    "visionOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "Metal",
  "identifier" : "/documentation/Metal/MTLRegion",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "Metal"
    ],
    "preciseIdentifier" : "c:@SA@MTLRegion"
  },
  "title" : "MTLRegion"
}
-->

# MTLRegion

The bounds for a subset of an instance’s elements.

```
struct MTLRegion
```

## Overview

Metal has many instance types that represent arrays of discrete elements. For example, a texture has an array of pixel elements, and a thread grid has an array of computational threads. Use [`MTLRegion`](/documentation/Metal/MTLRegion) instances to describe subsets of these instances.

The origin is the front upper-left corner of the region, and its extents go towards the back lower-right corner. Conceptually, when using an [`MTLRegion`](/documentation/Metal/MTLRegion) instance to describe a subset of an instance, treat the instance as a 3D array of elements, even if it has fewer dimensions. For a 2D instance, set the z coordinate of the origin to `0` and the depth to `1`. For a 1D instance, set the y and z coordinates of the origin to `0` and the height and depth to `1`.

## Topics

### Creating regions

[`init()`](/documentation/Metal/MTLRegion/init())

Initializes a new region.

[`init(origin:size:)`](/documentation/Metal/MTLRegion/init(origin:size:))

Initializes a new region with the specified origin and size.

[`MTLRegionMake1D(_:_:)`](/documentation/Metal/MTLRegionMake1D(_:_:))

Creates a 3D representation of a 1D region.

[`MTLRegionMake2D(_:_:_:_:)`](/documentation/Metal/MTLRegionMake2D(_:_:_:_:))

Creates a 3D representation of a 2D region.

[`MTLRegionMake3D(_:_:_:_:_:_:)`](/documentation/Metal/MTLRegionMake3D(_:_:_:_:_:_:))

Creates a 3D region.

### Getting and setting region information

[`origin`](/documentation/Metal/MTLRegion/origin)

The coordinates of the front upper-left corner of the region.

[`size`](/documentation/Metal/MTLRegion/size)

The dimensions of the region.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)