---
title: MTLCullMode
framework: metal
role: symbol
role_heading: Enumeration
path: metal/mtlcullmode
---

# MTLCullMode

The mode that determines whether to perform culling and which type of primitive to cull.

## Declaration

```swift
enum MTLCullMode
```

## Topics

### Cull modes

- [MTLCullMode.none](metal/mtlcullmode/none.md)
- [MTLCullMode.front](metal/mtlcullmode/front.md)
- [MTLCullMode.back](metal/mtlcullmode/back.md)

### Initializers

- [init(rawValue:)](metal/mtlcullmode/init(rawvalue:).md)

## Relationships

### Conforms To

- [BitwiseCopyable](swift/bitwisecopyable.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [RawRepresentable](swift/rawrepresentable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Encoding a render pass

- [MTL4RenderCommandEncoder](metal/mtl4rendercommandencoder.md)
- [MTLRenderCommandEncoder](metal/mtlrendercommandencoder.md)
- [MTL4RenderEncoderOptions](metal/mtl4renderencoderoptions.md)
- [MTLTriangleFillMode](metal/mtltrianglefillmode.md)
- [MTLWinding](metal/mtlwinding.md)
- [MTLPrimitiveType](metal/mtlprimitivetype.md)
- [MTLIndexType](metal/mtlindextype.md)
- [MTLDepthClipMode](metal/mtldepthclipmode.md)
- [MTLVisibilityResultMode](metal/mtlvisibilityresultmode.md)
- [MTLVisibilityResultType](metal/mtlvisibilityresulttype.md)
