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

# SKTileSet

A container for related tile groups.

```
class SKTileSet
```

## Overview

An [`SKTileSet`](/documentation/SpriteKit/SKTileSet) object contains an array of tile groups that define which tile definitions are available for use in a tile map.

Tile sets also define the arrangement of tiles within a tile map. In addition to the default rectangular grid layout, tile sets can also define hexagonal and isometric layouts.

## Topics

### Creating a Tile Set from a File

[`init(named:)`](/documentation/SpriteKit/SKTileSet/init(named:))

Initializes a tile set by searching the app bundle for an archived `.sks` file by name.

[`init(from:)`](/documentation/SpriteKit/SKTileSet/init(from:))

Initializes a tile set from a URL to an archived .sks file.

### Creating a Tile Set Programmatically

Create a tile set by passing in the various groups that make up the set.

[`init(tileGroups:)`](/documentation/SpriteKit/SKTileSet/init(tileGroups:))

Initializes a new tile set with an array of tile groups and rectangular grid layout.

[`tileSetWithTileGroups:`](/documentation/SpriteKit/SKTileSet/tileSetWithTileGroups:)

[`init(tileGroups:tileSetType:)`](/documentation/SpriteKit/SKTileSet/init(tileGroups:tileSetType:))

Initializes a new tile set with an array of tile groups and specified layout.

[`tileSetWithTileGroups:tileSetType:`](/documentation/SpriteKit/SKTileSet/tileSetWithTileGroups:tileSetType:)

### Accessing or Reading a Tile Set’s Properties

[`defaultTileGroup`](/documentation/SpriteKit/SKTileSet/defaultTileGroup)

The tile set’s default tile group.

[`defaultTileSize`](/documentation/SpriteKit/SKTileSet/defaultTileSize)

The tile set’s default tile size.

[`name`](/documentation/SpriteKit/SKTileSet/name)

A name associated with the tile set.

[`tileGroups`](/documentation/SpriteKit/SKTileSet/tileGroups)

The tile set’s array of tile group objects.

[`type`](/documentation/SpriteKit/SKTileSet/type)

The tile set’s type.

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

An enumeration defining how tiles are arranged.



---

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)