SpriteKit 的 TMX TileMap 框架。支持 iOS 8 和 OS X 10.10 及以上版本。
这是一个解析由 Tiled Map Editor 生成的地图的库。
pod 'SKTiledMap'
#import <SKTiledMap/SKTiledMap.h>
添加到您的源文件中。SKTMMapLayer *mapLayer = [[SKTMMapLayer alloc] initWithContentsOfFile:@"map.tmx"];
[self addChild:mapLayer];
// get tile layer
SKTMTileLayer *tileLayer = [mapLayer tileLayerWithName:@"Ground"];
// get object layer
SKTMObjectGroupLayer *objLayer = [mapLayer objectLayerWithName:@"Obj"];
// get shape in object layer
SKTMObjectGroupShape *heroObjShape = [objLayer shapeWithName:@"Hero"];
// get custom properties
[heroObjShape.model propertyForName:@"status"];
// get image layer
SKTMImageLayer *imgLayer = [mapLayer imageLayerWithName:@"Background"];
// Coordinates System Convert
CGPoint tilePoint = [mapLayer.mapRenderer screenToTileCoords:CGPointMake(320, 600)];
CGPoint mapPoint = [mapLayer.mapRenderer tileToScreenCoords:CGPointMake(1, 1)];
// more detail you can see in demo or source code.
参考TMX 地图格式参考页面。
SKTiledMap(root)
└── Framework
│
│-- SKTiledMap.h
│
├── Model
│ |-- TMXObject
│ |-- TMXTile
│ |-- TMXTileset
│ |-- TMXTileLayer
│ |-- TMXObjectGroupNode
│ |-- TMXObjectGroup
│ |-- TMXImageLayer
│ |-- TMXMap
│
├── Classes
│ |-- SKMapRenderer
│ |-- OrthogonalRenderer
│ |-- IsometricRenderer
│ |-- StaggeredRenderer
│ |-- HexagonalRenderer
│
└── SpriteKitNode
|-- SKTMNode
|-- SKTMTileNode
|-- SKTMObjectGroupTile
|-- SKTMObjectGroupShape
│
|-- SKTMLayer
|-- SKTMTileLayer
|-- SKTMObjectGroupLayer
|-- SKTMImageLayer
|-- SKTMMapLayer
libz.dylib
SpriteKit.framework
SKTiledMap 在 MIT 许可下发布。有关详细信息,请参阅 LICENSE。
示例贴图集艺术品由 Steffan (TilemapKit) 授权使用。
图片归属权
一些截图显示了开源的 Tiled Map Editor。TilemapKit 和此网站上的某些图像来自 OpenGameArt.org。
以下是 TilemapKit 使用的图像的完整列表,包括 OpenGameArt 作者/贡献者、许可证和源链接。
- CC-BY-SA 3.0
- Clint Bellanger (草原贴图集,洞穴贴图集),以及 贡献者。
- Tim Jonsson, Matthew Ostil (《 mastered 法术 Tilesets》)
- 署名通知: Nikita_Sadkov(《 mastering 法术 战略游戏》)
- Surt(《 古典遗迹 Tiles》)
- TRBRY(《 赛道 Tiles》)
- CC-BY 3.0
- Yar(《 异构 64x64 外部 Tileset》)
- GameArtForge(《 异构 立方体 - Set 01》)
- Calciumtrice(《 动画战士》,《 地牢 Tileset》)
- 署名通知: Calciumtrice 的动画战士,可在创意共享署名 3.0 许可下使用。
- 署名通知: Calciumtrice 的地牢瓷砖,可在创意共享署名 3.0 许可下使用。
- “免费软件”
- TheInquisitor(《 RPG Maker XP 世界地图 Tile Set》)
- 公有领域
- ansimuz(《 RPG 小镇像素艺术资源》)
- pixel32(《 像素六角 TilesetEnhanced》)
- Kenney(《 六角 Tile sets 93x》,《 异构 城市》,《 平台游戏艺术完整包》)
- Hyptosis(《 法师城市 Arcanos》)
- Buch(《 地牢 Tileset》)
- adythewolf(《 六角 Tileset Pack》)
- Guyome41(《 自然词》)
如果您发现任何可能缺少或错误署名的图片,请告知我,谢谢。