joeelectricity
joeelectricity

Reputation: 239

Load a .tmx (Tiled Map) in Sprite Kit?

Is there a (preferably easy) way to load a .tmx file in iOS 7's Sprite Kit? If not, are there any alternatives?

Upvotes: 19

Views: 12072

Answers (3)

CodeSmile
CodeSmile

Reputation: 64477

Check out TilemapKit for Sprite Kit. Unlike other solutions it loads and renders all (!) map types and variations supported by Tiled, including staggered iso and hex maps!

TilemapKit is properly engineered like a OOP framework should be, and exposes all data that is stored in the TMX file. In other words it's definitely not just a single class that got everything crammed into it.

Tile picking (point to coord, coord to point conversion) for all map types/variations is built-in. More awesome features on the way, review the roadmap and check out the Class Reference.

TilemapKit is also tested to be fully compatible with Swift and Mac apps, too.

Visit the TilemapKit forum if you have any questions or requests. I'm also posting frequent development reports so you can check what's coming up next.

Disclaimer: If it isn't obvious by now, I'm one of the TilemapKit developers. :)

Upvotes: 12

Julio Montoya
Julio Montoya

Reputation: 1614

you should use JSTileMap that is designed to work with Sprite Kit

  • add JSTileMap files to your project
  • add libz.dylib to the linked frameworks and libraries section of your project
  • import JSTileMap.h

and load a map with:

JSTileMap *tiledMap = [JSTileMap mapNamed:@"mapFileName.tmx"];
if (tiledMap) [mySKNode addChild:tiledMap];

Here is the source: https://github.com/slycrel/JSTileMap

Good Luck!!

Upvotes: 25

Calm Turtle
Calm Turtle

Reputation: 292

This is the best I have found. I am not sure if the do-it-yourself method would work this instance as I haven't tried implementing it yet.

http://gamedev.tutsplus.com/tutorials/implementation/parsing-tiled-tmx-format-maps-in-your-own-game-engine/

Upvotes: 2

Related Questions