---
title: MTLViewport
framework: metal
role: symbol
role_heading: Structure
path: metal/mtlviewport
---

# MTLViewport

A 3D rectangular region for the viewport clipping.

## Declaration

```swift
struct MTLViewport
```

## Topics

### Creating a viewport

- [init()](metal/mtlviewport/init().md)
- [init(originX:originY:width:height:znear:zfar:)](metal/mtlviewport/init(originx:originy:width:height:znear:zfar:).md)

### Specifying viewport boundaries

- [originX](metal/mtlviewport/originx.md)
- [originY](metal/mtlviewport/originy.md)
- [width](metal/mtlviewport/width.md)
- [height](metal/mtlviewport/height.md)
- [znear](metal/mtlviewport/znear.md)
- [zfar](metal/mtlviewport/zfar.md)

## Relationships

### Conforms To

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

## See Also

### Dynamic render pipeline states

- [MTLScissorRect](metal/mtlscissorrect.md)
- [MTLVertexAmplificationViewMapping](metal/mtlvertexamplificationviewmapping.md)
- [MTLQuadTessellationFactorsHalf](metal/mtlquadtessellationfactorshalf.md)
- [MTLTriangleTessellationFactorsHalf](metal/mtltriangletessellationfactorshalf.md)
