---
title: SCNShadowMode
framework: scenekit
role: symbol
role_heading: Enumeration
path: scenekit/scnshadowmode
---

# SCNShadowMode

Options for SceneKit’s rendering of shadows cast by a light, used by the shadowMode property.

## Declaration

```swift
enum SCNShadowMode
```

## Overview

Overview Each shadow mode may have a positive or negative effect on rendering performance, depending on the contents of the scene. Test your app to determine which shadow mode provides the best balance between performance and quality for the scenes you want to render.

## Topics

### Constants

- [SCNShadowMode.forward](scenekit/scnshadowmode/forward.md)
- [SCNShadowMode.deferred](scenekit/scnshadowmode/deferred.md)
- [SCNShadowMode.modulated](scenekit/scnshadowmode/modulated.md)

### Initializers

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

### Managing Shadows Cast by the Light

- [castsShadow](scenekit/scnlight/castsshadow.md)
- [shadowRadius](scenekit/scnlight/shadowradius.md)
- [shadowColor](scenekit/scnlight/shadowcolor.md)
- [shadowMapSize](scenekit/scnlight/shadowmapsize.md)
- [shadowSampleCount](scenekit/scnlight/shadowsamplecount.md)
- [shadowMode](scenekit/scnlight/shadowmode.md)
- [shadowBias](scenekit/scnlight/shadowbias.md)
- [orthographicScale](scenekit/scnlight/orthographicscale.md)
- [zFar](scenekit/scnlight/zfar.md)
- [zNear](scenekit/scnlight/znear.md)
