<!--
{
  "availability" : [
    "iOS: -",
    "iPadOS: -",
    "macCatalyst: -",
    "macOS: -",
    "tvOS: -",
    "visionOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "SpriteKit",
  "identifier" : "/documentation/SpriteKit/SKView",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "SpriteKit"
    ],
    "preciseIdentifier" : "c:objc(cs)SKView"
  },
  "title" : "SKView"
}
-->

# SKView

A view subclass that renders a SpriteKit scene.

```
class SKView
```

## Overview

You present a scene by calling the view’s [`presentScene(_:)`](/documentation/SpriteKit/SKView/presentScene(_:)) method. When a scene is presented by the view, it alternates between running its simulation (which animates the content) and rendering the content for display. You can pause the scene by setting the view’s [`isPaused`](/documentation/SpriteKit/SKView/isPaused) property to <doc://com.apple.documentation/documentation/Swift/true>.

## Topics

### Displaying a Scene

Present a scene to display content on the screen.

[`scene`](/documentation/SpriteKit/SKView/scene)

The scene currently presented by this view.

[`presentScene(_:)`](/documentation/SpriteKit/SKView/presentScene(_:))

Presents a scene.

[`presentScene(_:transition:)`](/documentation/SpriteKit/SKView/presentScene(_:transition:))

Transitions from the current scene to a new scene.

[`SKTransition`](/documentation/SpriteKit/SKTransition)

An object used to perform an animated transition to a new scene.

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

Control the timing of the view’s screen updates.

[`isPaused`](/documentation/SpriteKit/SKView/isPaused)

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

[`preferredFramesPerSecond`](/documentation/SpriteKit/SKView/preferredFramesPerSecond)

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

[`delegate`](/documentation/SpriteKit/SKView/delegate)

A delegate that allows dynamic control of the view’s render rate.

[`SKViewDelegate`](/documentation/SpriteKit/SKViewDelegate)

Methods to take custom control over the view’s render rate.

[`frameInterval`](/documentation/SpriteKit/SKView/frameInterval)

The number of frames that must pass before the scene is called to update its contents.

[`preferredFrameRate`](/documentation/SpriteKit/SKView/preferredFrameRate)

### Configuring Performance Related Toggles

Control hints that have performance implications which are unique to your app.

[`ignoresSiblingOrder`](/documentation/SpriteKit/SKView/ignoresSiblingOrder)

A Boolean value that indicates whether parent-child and sibling relationships affect the rendering order of nodes in the scene.

[`shouldCullNonVisibleNodes`](/documentation/SpriteKit/SKView/shouldCullNonVisibleNodes)

A Boolean value that indicates whether the view automatically culls non-visible nodes from the rendering tree.

[`allowsTransparency`](/documentation/SpriteKit/SKView/allowsTransparency)

A Boolean property that indicates whether the view is rendered using transparency.

[`isAsynchronous`](/documentation/SpriteKit/SKView/isAsynchronous)

A Boolean value that indicates whether the content is rendered asynchronously.

### Enabling Visual Statistics for Debugging

Display metrics in the bottom corner of the view for debugging purposes.

[`showsFPS`](/documentation/SpriteKit/SKView/showsFPS)

A Boolean value that indicates whether the view displays a frame rate indicator.

[`showsNodeCount`](/documentation/SpriteKit/SKView/showsNodeCount)

A Boolean value that indicates whether the view displays an overlay that shows physics bodies that are visible in the scene.

[`showsDrawCount`](/documentation/SpriteKit/SKView/showsDrawCount)

A Boolean value that indicates whether the view displays the number of drawing passes it needed to render the view.

[`showsQuadCount`](/documentation/SpriteKit/SKView/showsQuadCount)

A Boolean value that indicates whether the view displays the number of rectangles used to render the scene.

[`showsPhysics`](/documentation/SpriteKit/SKView/showsPhysics)

A Boolean value that indicates whether the view displays physics-related debugging information.

[`showsFields`](/documentation/SpriteKit/SKView/showsFields)

A Boolean value that indicates whether the view displays information about physics fields in the scene.

### Converting Between View and Scene Coordinates

Convert to or from scene and view coordinates which is a common task for touch or mouse input.

[`convert(_:from:)`](/documentation/SpriteKit/SKView/convert(_:from:))

Converts a point from scene coordinates to view coordinates.

[`convert(_:to:)`](/documentation/SpriteKit/SKView/convert(_:to:))

Converts a point from view coordinates to scene coordinates.

### Snapshotting Nodes to a Texture

Create a texture that is a flattened or cropped portion of the node heirarchy.

[`texture(from:crop:)`](/documentation/SpriteKit/SKView/texture(from:crop:))

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

[`texture(from:)`](/documentation/SpriteKit/SKView/texture(from:))

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

[Creating a New Node By Rendering To a Texture](/documentation/SpriteKit/creating-a-new-node-by-rendering-to-a-texture)

Render a portion of the node tree into a new texture.

### Switching Renderers

[Requesting the OpenGL Renderer](/documentation/SpriteKit/requesting-the-opengl-renderer)

Switch to the legacy renderer temporarily for debugging purposes.

### Instance Properties

[`disableDepthStencilBuffer`](/documentation/SpriteKit/SKView/disableDepthStencilBuffer)



---

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)