---
title: MTLBlendOperation
framework: metal
role: symbol
role_heading: Enumeration
path: metal/mtlblendoperation
---

# MTLBlendOperation

For every pixel, MTLBlendOperation determines how to combine and weight the source fragment values with the destination values. Some blend operations multiply the source values by a source blend factor (SBF), multiply the destination values by a destination blend factor (DBF), and then combine the results using addition or subtraction. Other blend operations use either a minimum or maximum function to determine the result.

## Declaration

```swift
enum MTLBlendOperation
```

## Topics

### Blend operations

- [MTLBlendOperation.add](metal/mtlblendoperation/add.md)
- [MTLBlendOperation.subtract](metal/mtlblendoperation/subtract.md)
- [MTLBlendOperation.reverseSubtract](metal/mtlblendoperation/reversesubtract.md)
- [MTLBlendOperation.min](metal/mtlblendoperation/min.md)
- [MTLBlendOperation.max](metal/mtlblendoperation/max.md)

### Enumeration Cases

- [MTLBlendOperation.unspecialized](metal/mtlblendoperation/unspecialized.md)

### Initializers

- [init(rawValue:)](metal/mtlblendoperation/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

### Controlling blend operations

- [isBlendingEnabled](metal/mtlrenderpipelinecolorattachmentdescriptor/isblendingenabled.md)
- [alphaBlendOperation](metal/mtlrenderpipelinecolorattachmentdescriptor/alphablendoperation.md)
- [rgbBlendOperation](metal/mtlrenderpipelinecolorattachmentdescriptor/rgbblendoperation.md)
