---
title: "makeVisibleFunctionTable(descriptor:stage:)"
framework: metal
role: symbol
role_heading: Instance Method
path: "metal/mtlrenderpipelinestate/makevisiblefunctiontable(descriptor:stage:)"
---

# makeVisibleFunctionTable(descriptor:stage:)

Creates a new visible function table.

## Declaration

```swift
func makeVisibleFunctionTable(descriptor: MTLVisibleFunctionTableDescriptor, stage: MTLRenderStages) -> (any MTLVisibleFunctionTable)?
```

## Parameters

- `descriptor`: An doc://com.apple.metal/documentation/Metal/MTLVisibleFunctionTableDescriptor instance that configures the visible function table the method creates.
- `stage`: An doc://com.apple.metal/documentation/Metal/MTLRenderStages instance that represents the render pass stage the visible function table applies to.

## See Also

### Creating function handles and tables

- [functionHandle(function:stage:)](metal/mtlrenderpipelinestate/functionhandle(function:stage:)-7uvul.md)
- [makeIntersectionFunctionTable(descriptor:stage:)](metal/mtlrenderpipelinestate/makeintersectionfunctiontable(descriptor:stage:).md)
