Absolutely awesome! Thanks for your hard work and dedication to this project!
A downloadable tool
(Last updated Sep 18th, 2021. Online documentation available on Read the Docs.)
Note: Please report any bugs to my Github page.
SuperTiled2Unity is a collection of C# Unity scripts that can automatically import Tile Map Editor files directly into your Unity projects.
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.
Click download now to get access to the following files:
- SuperTiled2Unity Version 1.10.328 days ago
- SuperTiled2Unity Version 1.10.2May 23, 2021
- SuperTiled2Unity Version 1.10.1Mar 14, 2021
- SuperTiled2Unity Version 1.10.0Jan 02, 2021
- SuperTiled2Unity Version 1.9.3Aug 24, 2020
- SuperTiled2Unity Version 1.9.2Jul 26, 2020
- SuperTiled2Unity Version 1.9.1Dec 03, 2019
- SuperTiled2Unity Version 1.9.0Nov 30, 2019
Log in with itch.io to leave a comment.
I've used right now and have succeeded to use it with Tiled and Unity; i am now really happy with this and cannot thank you enough for the help!
Thank you so much for Prefab Replacements! I tried using a Tile in an Object Layer with collision and it created too many nested GameObjects for my liking. Now I can just set markers and have Unity place the Prefabs in the right spot! Thank you thank you thank you!
can i use this with LDtk ?
is there a larger tileset import? my tileset is almost 1200px by 4048
Thanks for this awesome plugin Seanba. :)
Hey i have a problem because i am trying to import some tiles of "Tiled" but when i put all i need that say "We can't find the X sprite and all sprites i use...and i need something like a guide of this because i don't know how use it and i think some people have this problem too please help me (anyone) :c
Is this can be used to import maps at runtime?
I am using the latest versions of SuperTiled2Unity, Tiled, and Unity, and I am having a problem with importing an isometric map.
This is the map I made using Tiled:
This is what it looks like in Unity (the name of my project has been blacked out):
I even tried doing a custom axis as linked to in a previous comment made over a year ago by someone else.
Can you please help me?
I’m here to just say: I looove this Plugin it has quite deep integration in Unity and brings a new level of working with tiled and unity. I’m also happy, that the source is available. I had scaling issues, because I wanted to have a specific kind of parallaxing and was able to implement it in the Plugin.
Keep up the awesome work!
Hi, i just downloaded this and I am new to unity, how do I use this? Is there some documentation or instruction tutorial. (preferably written).
That's nice but what do I do with the file I just downloaded? How do I add it to Unity?
Hi @Seanba - how can I get access to the Tilemap image to change it at runtime? I want to change the sky tileset gradually as you move through the level, but I can't find any way to access and change the tilemap graphics.
Hey there. I'd recommend copy/pasting your response here https://seanba.itch.io/supertiled2unity/devlog/231859/supertiled2unity-version-1... or on whichever version you're currently using. I think you'll get a faster response! Cheers and good luck
Hey @Seanba I recently upgraded to Unity 2020.3.0f1. I'm using the Universal Render Pipeline and created a WebGL project with SuperTiled2Unity. The Tiled Map renders fine on Desktop Chrome but is just blacked out on Android. Would love some feedback! Thanks again for all your work
Thank you so much for your hard work, it is really appreciated! :)
Hey, I'm having some issues with the custom sorting axis. I followed all directions to a T, values are x0 y1 z0, custom sorting layer is selected, etc. But this is happening - https://gfycat.com/scentedwiltedkrill
This may be more of a Unity thing, but I'm not sure how to deal with colliders in 2D in top down, is there a way to "layer" colliders? When you go up stairs, it activates X colliders, when you go down the stairs, it activates others? As shown in this gif here - https://gfycat.com/heavyacrobaticlhasaapso
Hi there, @aricl. It looks like your character is sorting against those trees as I would expect. The problem is that those trees are made up of separate tiles. What you want is for your character's root position (at his feet I guess?) to always sort against the bottom of the tree. If you change your tree tiles so that they are twice as tall then it should work. Note that this is what the example that comes with SuperTiled2Unity does.
As for your second question that is more of a Unity issue. My advice is to get your collisions working as desired without using ST2U first (i.e. just using stock colliders). Once that is working to taste then you can take the lessons learned from that and apply that to your maps exported from Tiled.
Hey @Seanba . Any updates? I have a jam to submit due in 7 days. would love some advice as to why the map disappears when dragging past a certain value. thanks
My guess is that the map is being culled. I took a look on the Unity forums and see that other people are running into similar issues with Unity Tilemaps, which SuperTiled2Unity uses.
Try going to one of the Tilemap Renderer components on one of your layers in the map and play with the chunk culling values to see if that makes a difference. You want a culling size that large enough that it won't be culled out. If that "works" then perhaps you can add a custom importing script that will help set those values for you automatically.
In any case it sounds like a Unity bug. They won't be able to fix in time for your jam but when you have time it would be good to enter a bug with them. There's probably something special about objects that are part of a canvas that is failing to automatically update the bounding chunks. What is your runtime target? It could be a bug there too.
Hey @Seanba I have a Screen Space Camera Canvas in my Unity game. When I drag my Tiled Map in using SuperTiled2Unity, it seems to disappear if I move past a certain value. It shows in the Editor but not in Runtime.
Is there anyway to add support for normal maps to this? I'd like to use normal maps from Sprite DLight on my tilemaps
thanks for the tool :)
How do we report Bugs? Tilemap collisions do not work in Unity 2020.1.7 latest. Is this a missing feature or a bug?
Hi there, Sam. SuperTiled2Unity does not use Unity's TilemapCollider2D class but instead uses its own collection of PolygonCollider2D objects to help with collision. This is so we can use the collision geometry created on the tilesets within Tiled.
There is an example provided with SuperTiled2Unity that should give some clues. Thanks.
love tiled love unity
Hey I used SuperTiled2Unity in 2020.1. When, I Import a "Tiled" file then it has no animation. In "Tiled" it looks fine with all animation, but in Unity its not animated! So i started the example map but its totally black, only the Player is visible. Did I do something wrong with the animated tiles?
Hi there, nova234. The animations don't work until the user presses "play" in the editor. Is that perhaps the issue?
Are there any errors generated in the Console window in Unity?
Hey there, Seanba. Thanks for the reply. Programming is like magic a failure comes and mystically disappears. I slept overnight and its now working. I don't know why. Thanks Seanba for your Time.
HI, does anybody know how to I instantiate a tiled map via code? I am trying and nothing.... Also I am using the light system made by unity to iluminate 2d games, does it work along with this?
Hi there, marcospdsf. You should be able to instantiate the prefab created by the Tiled map importer the same you would any other prefab. (Note that most users just drag the prefab into their scene hierarchy though.) Are you getting any errors?
I need to store it in a variable, Wich I don't know the type, like is it a Image, a GameObject, or there is something like SuperTiled, need to call any method or import anything? The to instantiate, is it just instantiate(gameobject-tiled-image)?
I already tried some of those, but it didn't let me use, obviously 'cause it thinks it is not the type.
And I am really thankful for the answer
The prefab should be able to be stored or referenced as a GameObject like other prefab instances. It's possible I'm not understanding you fully, however, so it may be best to send me your project and point me to the code that is attempting the instantiation. (email@example.com)
This is a very useful and simple to use plugin, I like it ! Keep up with the good work !
Nevertheless, I have a problem trying to write a custom importer. I asked the question on StackOverflow but I thought I'll post it here in case someone else could try to solve my problem or to help others that face the same issue when the problems will be solved.
Hi there. I've replied to your stack overflow post but it looks like you have your own assembly definition that is not set up correctly. It is going to need references to the SuperTiled2Unity and SuperTiled2UnityEditor assemblies.
Seanba are you ok man? No more reply since a long time, I hope you are right!
hello, sorry 4 bothering but i need to know how to export my tile as a tsx
Hey Seanba, sorry to bother you again! I'm working with a 2D light System (http://tiny.cc/sphpnz) and I need boxed collision polygons to be generated not triangulate to generate dynamic shadows properly. Can SuperTiled2D generate these kind of colisions without the triangules (check picture). Thanks again for your awesome tool! Be safe.
What a wonderful tool. Quick question about sorting: If I import two walls, each made up of tiles, and one is above another on the Y axis, the custom sort order seems to make my character always show on top of the bottom wall, and below the top wall. Is unity using the Y axis of the wall layer - where the walls are - rather than each wall's Y coordinate for sorting?
Changing the mode to individual didn't fix things either, as now my character shows in front/behind of individual wall tiles. Any help is appreciated.
Also, let me know if you have a donation page. Thank you!
Hey, I was wondering if you could help me fix this issue when I try to paint on the imported tilemap, for some reason the tile is not centered on the pixel and it's off to the down left side of the pixel.
It is a very usefull tool.But i have a strange problem to import an isometric map.I got X offset in Image Layer.I tried everything i can. like this:
Can i do with this something like this easy for more levels: https://mr-mohammad-rasoul.itch.io/survival-shooter-3fps-unity25d-webgl2
Can i change tsx dynamically in unity?
First of all ty for this awesome tool. I'm having troubles to import an isometric map. Maps perfect placed in tiled but when I export to unity the layers messed up (worst when I click play). Can you help me please? Images attached.
Hi there, @mmztech. What are you using for the "Layer/Object Sorting" on your map? With an isometric map you're going to need to use a "Custom Sort Axis". This will also require you to set your Transparency Sort Mode in your Graphics setting as well.
Check this out for further details: https://supertiled2unity.readthedocs.io/en/latest/manual/sorting.html#dynamic-sorting-with-a-custom-sort-axis
Thank you for this wonderful tool!
Great tool! I much prefer it to Unity's tilemap tools.
I have one question:
My Tiled tilemap is set to "right-up", however when I import my tilemap to Unity, everything seems to work as "right-down" by default, and all my tiles have negative Y positions. Is there a way to change this behaviour?
Hi there, @halfcut. Unfortunately Tiled and Unity use different coordinate systems so I picked the solution that I hoped was the best case given what we have to work with. I wanted to keep the top-left corner of a map the "origin" but that did force my hand for maps to go down the negative Y axis. :/
Hi! Way to make life so easy for everyone! Thanks so much for the generous application. Just a quick question. Say I make a map with some collisions in Tiled. And then I import it into Unity. It isn't the right size so I manually resize the map to fit my sprites. And then I adjust the camera, and all is well. But then I go back into Tiled and decide to add a new section to the map. So I resize the map to double in size. And then I add a bunch more collisions. And then save all the files, overwriting the pre-existing ones. Now as far as I can figure out, I have to reimport it all into Unity again, resize it all, and fix the camera once again. I just want to streamline it so I don't have to take 5 minutes fixing everything every time I make a change to the tile map or tile sets.
There is probably a simple solution right in front of my eyes, but I haven't been able to figure it out yet even after looking through some of the documentation. I found the "Reimport Tiled Assets" button in the settings, that sounds like it would help but it seems to have done nothing.
Thank you all in advance for any help.
Hi there, jets1234. Sorry for the late reply. For future reference issues like this are much more visible to me on my Github page.
There is indeed a simple solution for the size of your maps: Whatever Pixels Per Unit setting you are using for your sprites must be used for your tilesets and maps too.
You can set PPU on a per-map or per-tileset basis or you can change them for every asset in your project in the project settings ...
Camera settings are another story though. It sounds like you're trying to auto-fit your camera every time you resize your map (that isn't common, I think)? For that you're going to have to write some custom scripts for your camera.