<!--
{
  "availability" : [
    "watchOS: 3.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "WatchKit",
  "identifier" : "/documentation/WatchKit/WKInterfaceSKScene",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "WatchKit"
    ],
    "preciseIdentifier" : "c:objc(cs)WKInterfaceSKScene"
  },
  "title" : "WKInterfaceSKScene"
}
-->

# WKInterfaceSKScene

A visual WatchKit element that displays a SpriteKit scene.

```
class WKInterfaceSKScene
```

## Overview

Present a scene by calling the interface’s [`presentScene(_:)`](/documentation/WatchKit/WKInterfaceSKScene/presentScene(_:)) or [`presentScene(_:transition:)`](/documentation/WatchKit/WKInterfaceSKScene/presentScene(_:transition:)) method and passing in a <doc://com.apple.documentation/documentation/SpriteKit/SKScene> object. When a scene is presented, it alternates between running its simulation (which animates the content) and rendering the content for display. You can pause the scene by setting the interface’s [`isPaused`](/documentation/WatchKit/WKInterfaceSKScene/isPaused) property to <doc://com.apple.documentation/documentation/Swift/true>.

Do not subclass or create instances of this class yourself. Instead, drag a SpriteKit Scene object from your Object Library and add it to your storyboard. Then define an outlet in your interface controller class and connect it to the SpriteKit Scene object. For example, to refer to a scene object in your interface, define a property with the following syntax in your interface controller class:

```swift
@IBOutlet weak var sceneInterface: WKInterfaceSKScene!
```

During the initialization of your interface controller, WatchKit creates a new instance of this class and assigns it to your outlet. At that point, you can use the object in your outlet to make changes to the SpriteKit scene.

The SpriteKit scene in your Watch app must be connected to a [`WKInterfaceSKScene`](/documentation/WatchKit/WKInterfaceSKScene) outlet in your WatchKit extension for the scene to be visible in your watchOS app’s user interface.

## Topics

### Displaying a Scene

Define the content displayed by this watch interface.

[`scene`](/documentation/WatchKit/WKInterfaceSKScene/scene)

The currently presented SpriteKit scene.

[`presentScene(_:)`](/documentation/WatchKit/WKInterfaceSKScene/presentScene(_:))

Presents a scene.

[`presentScene(_:transition:)`](/documentation/WatchKit/WKInterfaceSKScene/presentScene(_:transition:))

Transitions from the current scene to a new scene.

### Configuring the Scene in a Storyboard

Adjust the Storyboard to set up your watch interface.

[Configuring a WatchKit Scene in a Storyboard](/documentation/WatchKit/configuring-a-watchkit-scene-in-a-storyboard)

Xcode lets you configure information about your SpriteKit Scene in your storyboard file. The following table lists the attributes you can configure in your storyboard and their meaning.

### Controlling the Timing of a Scene’s Rendering

Define the display link callback frequency or pause callbacks entirely.

[`preferredFramesPerSecond`](/documentation/WatchKit/WKInterfaceSKScene/preferredFramesPerSecond)

The animation frame rate that the interface uses to render its scene.

[`isPaused`](/documentation/WatchKit/WKInterfaceSKScene/isPaused)

A Boolean value that determines whether the view’s scene animations are paused.

### Snapshotting Nodes to a Texture

Create a snapshot of a transformed node or portion of the node tree.

[`texture(from:)`](/documentation/WatchKit/WKInterfaceSKScene/texture(from:))

Renders the contents of a node tree and returns the rendered image as a SpriteKit texture.

[`texture(from:crop:)`](/documentation/WatchKit/WKInterfaceSKScene/texture(from:crop:))

Renders a portion of a node’s contents and returns the rendered image as a SpriteKit texture.

### Initializing for SwiftUI

[`init()`](/documentation/WatchKit/WKInterfaceSKScene/init())

Creates a SpriteKit scene for use in SwiftUI.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)