The goal of SuperTiled2Unity is simple: Tiled files saved to your Unity project are automatically converted to prefabs you can drop into your scenes. That's it.

SuperTiled2Unity it a complete rewrite of my popular Tiled2Unity tool, first released in 2014. Unity has seen many improvements in that time and SuperTiled2Unity takes advantage of Scripted Importers to support Tiled files directly within Unity. There is no longer any need for a separate exporter tool which means SuperTiled2Unity is supported on every OS right out-of-the-box.

SuperTiled2Unity uses tile-based classes now native to Unity (like Tilemap) so that built prefabs are closer to Unity's vision of such assets.

This tool is currently available for free but donations (or even a kind word) are always appreciated.

Someone was reporting a similar crashing issues when using Unity 2018.3. I was able to replicate and put a fix in the latest version of SuperTiled2Unity (1.5.4). Hopefully this fixes the problem for you as well.

Thanks. I ran into a problem at first, but after reading below I found out that my files needed to all be in the same folder, and also that it requires Tiled to save it to that folder to resolve the path. So all is good now!

I'm experimenting with the prefab replacement feature. I'd like to be able to replace an object with my prefab but retain the collision geometry as it is. ST2U creates a BoxCollider2D, PolygonCollider2D, or EdgeCollider2D based on the geometry but this collider is lost when the object is replaced with my prefab.

I don't think there's a natural way to merge the colliders into a prefab that would work for everyone, so what I'm hoping is for a way to hook a script to the TMX import. There I could transfer the collider geometry into my prefab. Does such a hook exist already?

Hi there, Armakuni. This is exactly the kind of thing you would use a Custom Importer for. It's a script you can attach to the importer process to do extra work on your TMX prefab just before the import completes.

Is not working do not trust in this tool I was very reasonable to donate but I would not many errors to import do not resize as well in unity everyone try to use the tile palette in unity is hard pain of butt is the only way to get a fast workflow.

Like I've told you before there is a trivial solution to the problem you were having. Unity has the concept of "Pixels Per Unit" that is used for textures, sprites and tilemaps. SuperTiled2Unity also supports this functionality. All you need to do is make sure you are using the same "Pixels Per Unit" value for your Tiled maps and tilesets.

By default, Unity prefers values of 100 because that works well with their 2D physics systems. Personally, I use a value of 1 so that 1 unit is 1 pixel. YMMV.

If the issue persists then report a bug on my GitHub page and I will look at it further.

I may not be using Tiled correctly with SuperTiled2Unity but I am getting this error on the Tiled map file:

"SuperTiled2Unity version: 1.4.6, Unity version: 2019.1.0f2Errors detected in tileset 'Map_Tileset.tsx'. Check the tileset inspector for more details. Your map may be broken until these are fixed.Could not find tile 63. Make sure the tilesets were successfully imported.Could not find tile 6. Make sure the tilesets were successfully imported.Could not find tile 3. Make sure the tilesets were successfully imported.Could not find tile 4. Make sure the tilesets were successfully imported.Could not find tile 5. Make sure the tilesets were successfully imported.Could not find tile 60. Make sure the tilesets were successfully imported.Could not find tile 61. Make sure the tilesets were successfully imported.Could not find tile 62. Make sure the tilesets were successfully imported.Could not find tile 117. Make sure the tilesets were successfully imported."

I'm also getting this error on the Map_Tileset.tsx file even though the roguelikeSheet_transparent.png is in that spot:

I have a small question about the pivot point of the sprites when they are imported in Unity. We have a rock sprite and when it is imported in Unity, it looks like the pivot point is placed at the very bottom left. The problem is that we absolutely need to be able to change the position of that pivot point. We thought at first that changing the drawing offset in Tiled would also change the pivot, but it doesn't seem to work. Is there anyway to edit the pivot either in Tiled or in Unity (after importing everything)?

Hi there. SuperTiled2Unity puts the pivot point for Tile Objects at the bottom-left corner because that's what Tiled does.

If you need to manage the pivot point of a Tile Object then chances you want to control or manage other aspects of the object. In other words, it's now longer just a decorative tile on your level somewhere but tied into gameplay somehow.

In that case I'd recommend keeping your Tile Object in Tiled but use a "Prefab Replacement" so that those objects are replaced by a "proper" sprite (or some other object) that you have scripting control over.

First, thank you very much for this awesome tool and for the previous Tiled2Unity tool.

I have a game which runs perfectly fine with the previous Tiled2Unity code, but migrating to SuperTiled2Unity has made the instantiation of the map very slow (can take 6 seconds to instantiate the map).

I am intantiate the map from a tmx file using (the tmx is being loaded from an asset bundle):

MapGameObject = GameObject.Instantiate(tmxObject);

Can you suggest anything I should try to get back the fast performance I had with the previous library and still migrate to the new library?

Hi again, sorry for the late response! I was able to fix it by upgrading to the latest unity version & latest SuperTile2Unity. I also instantiate the map now from a prefab (like we use to do in the previous Tile2Unity) instead of the tmx. Thanks again for the great library!

When I load a .TMX map file it is counted as a game object that I can put into the scene but has no picture. I even imported the tileset .TSX as well as the original sprite sheet but it stays blank! please I need help.

Hi there, PuppyQake. Check the Inspector for your TMX file. Are there any errors there? My guess is that your referenced tileset.tsx file is not in the proper location. (You have to keep relative paths between your TMX , TSX, and texture files)

Hi there, Dasimar, are your imported tilesets and PNGs in the locations they are expected? It looks like you may have imported them all to the same directory in Unity but they are expected to be in different directories.

i'm unfortunately having the same issue. i love tiled but can't for the life of me get it to integrate into unity. i've tried saving all my files in a multitude of different directories yet i just can't seem to figure it out. step by step tutorials online are non existent or don't show how/where they save their tiled projects/tmx/png files. if there is any way to see a step by step process from absolute beginning to end (starting a tiled project, where to import from, where to save files and finally where to export for integration with unity) would be incredibly appreciated. i've gone around so many times that at this point i've only confused myself.

I'm sorry that some people are having difficulty with this. I assumed relative paths between TMX, TSX, and textures would be a straightforward concept for people making games although I concede that Unity assets don't normally have these restrictions.

The easiest thing to do, before you do anything with Unity, is have your Tiled map and all other files it references (tilesets and textures) all live in the same folder on your harddive somewhere. Then, drag that folder into your Unity project in one go.

Hi there, kolibrigamestudio. If you use a custom property named "unity:isTrigger" on your Tile Layer or Tileset or Collision properties (in Tiled) then those colliders will be made part of a Trigger volume. See the example that comes with SuperTiled2Unity (the overhead scene). The water tiles there make up a trigger volume.

Likewise, you can use a custom property names "unity:tag" to give your Tile Layer a tag. Not this tag will be on your Collision_Ground parent (Trap) however.

Is there any documentation for the layer/object sorting? I'm upgrading from Tiled2Unity and there doesn't seem to be anything that works similar to Tiled2Unity's DepthBuffer/SpriteDepthInMap functions.

Thanks, Sean. This is helpful. Which sorter would work best for SpriteRenderers? Still not able to get the sorting quite like Tiled2Unity's Depth Buffer. This also broke transparency for layers at a lower opacity.

Hi Sean! Thank you for 1.3.0! It's helped a ton with some issues I was having before. My sprites are now sorting with tiles (same Sorting Layer, same order, same Z position if that matters), but they're sorting a bit late. Hard to describe so I recorded a GIF of what's going on: https://imgur.com/jtBNJrd

The scene seems set up similar to the MegaDad example scene. Is there anything I might be missing from the documentation? Transparency Sort Axis is also 0,1,0.

Hi Max. From the image I can't tell how your character is supposed to be sorting with what appears to be a rug to my eyes? It looks to me like they should have separate sorting orders? It may be easier to diagnose if you send me your project (exported as a Unity package is fine) with a description of what's going wrong. (sean@seanba.com)

In the most recent version, I noticed that tile layers get displaced automatically on the Z axis. With no warning or visibility over this, it was pretty frustrating to have layers disappearing out of my camera's culling depth and not understand why. Does this really need to happen, and can we have an option to set the Z-offset if so?

Hey there!! First of thank you for this amazing tool it works like a charm. I'm looking for a way to turn objects from the Tiled Editor into Unity Prefabs. I found some tutorials for your old Tiled2Unity, but i can't get them to work. I would be super thankful if you can give me some hints or tutorials how i get this to work.Thanks in advance and best regards

Hi there. I'm working on a new version of SuperTiled2Unity that will make it easier to replace objects in your maps with prefabs. In the meantime you can try to write a custom importer (which is usually how I do such things). I don't have much documentation on this but this example on github should give an idea. In particular, `TrackCustomImporter.cs`, is the custom importer doing most of the work.

First off thank you very much for this amazing tool! I am having issues though,Top is old tiled2unity import bottom is SuperTiled2Unity. Why is there such a dramatic size difference between the two of them? Also do you have update documentation because the one on the site isn't very helpful.

When I set it to the same Pixels Per Unit as Tiled2Unity the size is the same however the level is separating all of the parts by a lot.

Fixing the PPU has fixed the scaling issue, however I am now having collider issues with the maps. After importing the maps I have to go back to the map and set the Edges Per Ellipse to 0 and apply it before it sets the colliders correctly. After doing so the EPE sets back to 6. Is there a way to resolve this issue so that I do not have to change the setting and apply it on each map after importing?

.

With my current setup I have a rather large map that is chunked out so that it only loads when you are near them. With the issues I am having above I cannot use this setup because of the issues with the colliders. I need this system so my game is playable via mobile devices.

Hi there. Why are you setting Edges Per Ellipse to 0? That shouldn't be allowed as we need some sensible number of edges in order to approximate elliptical colliders with polygonal shapes. If you have elliptical colliders in your tilesets that you don't want imported can not remove them in the Collision Editor in Tiled?

Is there any documentation for this at all? I followed a youtube tutorial to the letter but things are not working at all. I imported each of the required files, but even though I imported the .tsx , when I import the tileset image it references the .tsx doesn't read it at all. Keeps saying that the image is missing from the very original location that has nothing to do with unity.

Can you export your project in Unity as a Unity Package and send it to me (sean@seanba.com)? I concede the documentation is light but I was also hoping it wouldn't be required. BTW, what youtube tutorial are you following?

Thanks for the response. I found out what my issue was and fixed it. Basically what the issue was, is that when it's imported into Unity, I have to have the exact same folder organization set up as what is on the desktop. Should have been a no brainer I guess but I kept not seeing it for a while. I like to keep things nice and tidy with my files, So for instance, I had my TileD tilesets seperate from where my map was on my folder layers, and then I had the tilesets images also saved in yet another folder that was further organized into subfolders and so forth. The key important factor was I needed to A) Make sure that wherever I save the TileD maps, that any of the tilesets and images need to be on the same level or within folders derived from the folder the map is in. Then in unity, if folders were used to seperate things, then they need to be made in unity and placed in the same manner so that it can locate it correctly.

The tutorial I used was:

But basically because I was using folders to organize things for TileD outside of unity, I just had to copy the file hiearchy in unity for it to find it correctly. Lets just say learning this I reorganized how I had everything organized so that I didn't have a long string of folders to get to the tile image I needed. Sorry if this response makes no sense, sometimes I have a hard time explaining what's going on in my head.