---
title: vertexFunctionName
framework: scenekit
role: symbol
role_heading: Instance Property
path: scenekit/scnprogram/vertexfunctionname
---

# vertexFunctionName

The name of the vertex shader function to load from a Metal shader library.

## Declaration

```swift
var vertexFunctionName: String? { get set }
```

## Discussion

Discussion A program’s vertex shader executes once for each vertex in the geometry it renders. It takes as input the attributes of each vertex (such as position in model space, normal vectors, and texture coordinates). The vertex shader then outputs a clip-space position for the vertex, as well as values that the GPU interpolates across a surface and sends to the fragment shader. By default, SceneKit looks for a fragment shader function by this name in the default Metal library. To use shaders from a separate library file, change the library property.

## See Also

### Working With Metal Shaders

- [fragmentFunctionName](scenekit/scnprogram/fragmentfunctionname.md)
- [library](scenekit/scnprogram/library.md)
