---
title: MTLRenderPipelineFunctionsDescriptor
framework: metal
role: symbol
role_heading: Class
path: metal/mtlrenderpipelinefunctionsdescriptor
---

# MTLRenderPipelineFunctionsDescriptor

A collection of functions for updating a render pipeline.

## Declaration

```swift
class MTLRenderPipelineFunctionsDescriptor
```

## Overview

Overview When you create a render pipeline that takes visible functions as parameters, you need to specify all possible functions that the render pipeline can call. If you already have a pipeline, you can create a new render pipeline with the same configuration but additional callable functions. To create the new pipeline state, configure an MTLRenderPipelineFunctionsDescriptor instance with the additional callable functions to add, and then call the pipeline state’s makeRenderPipelineState(additionalBinaryFunctions:) method, passing the descriptor.

## Topics

### Configuring the descriptor’s functions

- [vertexAdditionalBinaryFunctions](metal/mtlrenderpipelinefunctionsdescriptor/vertexadditionalbinaryfunctions.md)
- [fragmentAdditionalBinaryFunctions](metal/mtlrenderpipelinefunctionsdescriptor/fragmentadditionalbinaryfunctions.md)
- [tileAdditionalBinaryFunctions](metal/mtlrenderpipelinefunctionsdescriptor/tileadditionalbinaryfunctions.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

### Render pipeline states

- [MTLRenderPipelineState](metal/mtlrenderpipelinestate.md)
- [MTL4RenderPipelineDescriptor](metal/mtl4renderpipelinedescriptor.md)
- [MTLRenderPipelineDescriptor](metal/mtlrenderpipelinedescriptor.md)
- [MTL4MeshRenderPipelineDescriptor](metal/mtl4meshrenderpipelinedescriptor.md)
- [MTLMeshRenderPipelineDescriptor](metal/mtlmeshrenderpipelinedescriptor.md)
- [MTLPipelineBufferDescriptor](metal/mtlpipelinebufferdescriptor.md)
- [MTLPipelineBufferDescriptorArray](metal/mtlpipelinebufferdescriptorarray.md)
- [MTL4RenderPipelineColorAttachmentDescriptor](metal/mtl4renderpipelinecolorattachmentdescriptor.md)
- [MTLRenderPipelineColorAttachmentDescriptor](metal/mtlrenderpipelinecolorattachmentdescriptor.md)
- [MTLRenderPipelineColorAttachmentDescriptorArray](metal/mtlrenderpipelinecolorattachmentdescriptorarray.md)
- [MTL4TileRenderPipelineDescriptor](metal/mtl4tilerenderpipelinedescriptor.md)
- [MTLTileRenderPipelineDescriptor](metal/mtltilerenderpipelinedescriptor.md)
- [MTLTileRenderPipelineColorAttachmentDescriptor](metal/mtltilerenderpipelinecolorattachmentdescriptor.md)
- [MTLPipelineOption](metal/mtlpipelineoption.md)
- [MTL4RenderPipelineBinaryFunctionsDescriptor](metal/mtl4renderpipelinebinaryfunctionsdescriptor.md)
