A Swift framework for integrating Tiled map editor assets with Apple's SpriteKit for iOS, tvOS, and macOS games.
SKTiled is a Swift framework that enables developers to load and use maps created in the Tiled map editor within Apple's SpriteKit game engine. It solves the problem of integrating complex, editor-designed tile-based levels into iOS, tvOS, and macOS games by providing a native parser and renderer for Tiled's TMX format. The framework translates Tiled's features—like layers, objects, custom properties, and animations—directly into SpriteKit nodes.
Game developers using Apple's SpriteKit on iOS, tvOS, or macOS who want to design levels with Tiled's advanced map editor and integrate them seamlessly into their Swift projects.
Developers choose SKTiled because it offers a robust, Swift-native bridge between Tiled and SpriteKit with full feature support, eliminating the need for custom parsers. Its deep integration allows direct manipulation of Tiled assets within SpriteKit, including animations, custom properties, and gameplay-ready graph generation.
Swift framework for working with Tiled assets in SpriteKit
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Parses all map orientations (orthogonal, isometric, hexagonal), layer types, and compression formats, ensuring accurate rendering of complex Tiled maps as detailed in the features list.
Built natively in Swift, it translates Tiled assets directly into SpriteKit nodes like SKTilemap and SKTile, allowing for type-safe manipulation within game scenes, as emphasized in the philosophy.
Provides methods to query tiles, objects, and layers by type, name, coordinates, or custom properties, with practical examples in the usage section for efficient gameplay logic.
Supports generating GKGridGraph from custom attributes, enabling built-in pathfinding in SpriteKit without external libraries, as mentioned in the key features.
The README admits missing support for key Tiled features like infinite maps, tile collision objects, Zstandard compression, and layer tinting, which could limit advanced map designs.
Only available for Apple ecosystems (iOS, tvOS, macOS), making it unsuitable for cross-platform game development beyond these platforms, as indicated by the platform badges.
Requires Carthage or CocoaPods for installation without native Swift Package Manager support, adding complexity to project setup compared to modern Swift frameworks.