Search Unity

[RELEASED] - proTile Map Editor

Discussion in 'Assets and Asset Store' started by proandrius, Oct 1, 2013.

  1. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    Hello fellows,

    ------
    PS: Discussion is now moved to the new thread with the second version: http://forum.unity3d.com/threads/released-protile-map-editor-2.311542/
    ------

    I would like to announce my Unity Editor Extension - proTile Map Editor that I've been working for quite a while!



    Feature list:

    • Different types of painting Tiles (Standard, Mass, Continuous).
    • Tile-Connections: will connect roads, walls and similar assets for you.
    • Tile Randomizer.
    • Patterns: Build once, place multiple times.
    • Performance and size optimisations.
    • Editor for categorizing your Tiles.
    • Different camera setups. Fits different 3D/2D type of games.
    • Easy to Load and Use maps.
    • Supports different size/scale Tiles.
    • Works with Unity Free and all platforms.
    • Fits for regular map making, not only tile based.
    • It's open source, so you can change code or use API in game.
    • Documentation, examples and more!
    Best is to watch Video Presentation:


    Some screenshots:












    v1.4 UPDATE

    Video


    v1.4 Update includes:
    - Tile Randomizer. Randomize your tile prefabs / rotation when building.
    - New and better Mass Builder. Ability to mass build vertically.
    - Better support for Lightmaps.
    - New and better Eraser.
    - Define map scale when loading.
    - Better optimization and performance.
    - Better experience in general and other improvements (eg. saving options, camera position, etc for each map).
    - Better support for 2D/Quads.
    - Very fast Editor loading.
    - Some bug fixes and other improvements.

    For documentation and more info visit: http://www.protilemapeditor.com

    Asset Store link: http://u3d.as/content/pro-andrius-productions/pro-tile-map-editor

    Let me know what you think and Enjoy!

    ------
    PS: Discussion is now moved to the new thread with the second version: http://forum.unity3d.com/threads/released-protile-map-editor-2.311542/
    ------
     
    Last edited: Mar 21, 2015
  2. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    UPDATE: Version 1.08

    Fixed: Very minor issue with MapLoader Component (now loading maps at runtime should work for all platforms without any issues).
    Improved: Better Documentation.
     
  3. ProjectOne

    ProjectOne

    Joined:
    Aug 9, 2010
    Posts:
    442
    Nice!

    iOS performance?
     
    Last edited: Oct 1, 2013
  4. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    @ProjectOne, thanks!

    Regarding iOS performance, it's working very well. I'm actually using it for my mobile RPG game. It might require to do some loading tricks if you want very huge maps but it supports LoadMapAsync() so you can load other map parts while game is running.
     
  5. ProjectOne

    ProjectOne

    Joined:
    Aug 9, 2010
    Posts:
    442
    Then... 2 x Nice! :)
     
  6. Hoegbo

    Hoegbo

    Joined:
    Jan 21, 2012
    Posts:
    62
    I saw the movie 3 times , awesome.

    but would hte following be possible to add in a future release.
    "power of 3 " tilesets , ie , bottom middle and top sections,
    and a random tile option. so if I have 5 different grass tile and use the mass fill option I will get 1 map with pure randomness :)
     
  7. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    @Hoegbo, thank you. :)

    Regarding "power of 3 tiles", I'm not sure what do you mean. I do support different size/scale tiles it only depends on how you setup your pivot point, for example: http://protilemapeditor.com/wp-content/uploads/2013/09/MakingTiles_01.png

    About "random tile option" it's already on my todo list, it will be released in some upcoming updates. Not sure when yet, trying to figure out how to make a really nice set-up for them. :)
     
  8. DaneC020

    DaneC020

    Joined:
    Mar 19, 2010
    Posts:
    191
    Purchased, very cool little tool. I was actually making something similar for a friend, so this will save us some time. :p Thanks for building this.

    -Dane
     
  9. Hoegbo

    Hoegbo

    Joined:
    Jan 21, 2012
    Posts:
    62
    to take a few examples, for vertical , House ,
    split in 3 parts as seen in the picture below
    bottom , middle and top (not counting the roof in this case. the middle part could repeat it self.
    then you could just use the mass fill with a set height option and voila instant building.
    or if you think horizontally , like a road where you can have top and bottom tiles set to random so you get if you want to have the rugged dirt road look like in the 2nd picture. '
    or you could make a river ,with either horizontal or vertical versions. add cross overs like widening the road. build cliff overhangs/boulges by building outwards or invards.

    I am very very very bad at explaining as I thing half and say half , but I hope I came a cross slight


    $Capture.PNG
    $Capture2.PNG
     

    Attached Files:

    Last edited: Oct 3, 2013
  10. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    @DaneC020, thank you very much!

    @Hoegbo, regarding when building in vertical you can easily do that. You can either make some patterns with your building and build them using mass build or you can handle vertical just by building with mass always on top (mass build handles any top position, so you can use mass build on top of your objects). For randomising, that is something in my todo list.

    For streaming maps, you can use LoadMapAsync() and you can set map offset to be loaded, so you can have huge map (which is made from different maps) and stream it while playing.
     
    Last edited: Oct 3, 2013
  11. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    Just released update v1.12.

    Release Notes
    • Support for non-renderer tiles (when making triggers and similar).
    • Exposed "enable/disable Snap on TOP" in runtime Options.
    • Fixed default offset for map loading.
    • Ability to change speed of LoadMapAsync in function and improved loading in general.
    • Better support for plane/2D or very small tiles.
    • Improved performance and documentation.
     
  12. Ben-BearFish

    Ben-BearFish

    Joined:
    Sep 6, 2011
    Posts:
    1,204
    Is it possible to take 2D tilesets and make a 2D plane tilemap using this plugin?
     
  13. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    It's possible to use 2D tiles to use this plugin but if you have an atlas you will have to make each tile separated on your own.
     
  14. jasonMcintosh

    jasonMcintosh

    Joined:
    Jul 4, 2012
    Posts:
    74
    This looks amazing!

    You mentioned that it "Fits for regular map making, not only tile based." Does that mean it can be used, for example, with a Unity terrain?
     
  15. im

    im

    Joined:
    Jan 17, 2013
    Posts:
    1,408
    very nice
     
  16. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    It should work with terrain if you change grid object to terrain and put in the exact place and add collider + tag. But by default I did not intend to make it work with terrain but it is possible with some tweaks.
     
  17. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    @im, thanks!
     
  18. MitchelQ

    MitchelQ

    Joined:
    Nov 18, 2013
    Posts:
    18
    Hi there, I have 2 questions:

    Is it possible to change / delete or add tiles within a game (when you're playing?) for like in a building game. And have the walls or roads automatically allign?

    Can I make new tiles easily (also the wall and road tiles)?
     
  19. HanfordL

    HanfordL

    Joined:
    Jan 4, 2014
    Posts:
    4
    Question: Does it support adding tiles that aren't snapped? In the video it looks like the chairs are rotating smoothly but I don't see a single tile that is placed off kilter. Is that possible?
     
  20. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    Hi, yes it's possible. You can turn on/off snapping for X/Z axis, so you can place object however you want.
     
  21. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    1. It's possible, but at the moment for map editor to work at runtime player you will need to do some coding, because I'm using a lot of Editor functionality and you will have to remove/replace these. I'm making an update for the editor and one of the new features are to support map editor in runtime player.

    2. Yes, it's not hard. I have explained some of the basics in the documentation. Basically you need to follow some simple rules (which most of the time are common) http://protilemapeditor.com/?page_id=5
     
  22. njohn

    njohn

    Joined:
    Dec 7, 2013
    Posts:
    3
    Hi,

    First of all, thanks for is a really useful tool.

    I've noticed the following corruption on some of the menus, not a big deal, but sometimes makes it hard to read..

    $pro tile menu.png

    I'm using version 4.3.4f1 on windows 7.

    Thanks...
     
  23. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    Hi, Thanks! I will look into! Sometimes Unity Free behaves weird with this kind of stuff.
     
  24. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    By the way, I wanted to note that soon new update will come out!

    New features soon:
    • Tile randomizer - randomise tile prefabs and rotations (good when using mass/continues build).
    • New and better Mass Builder + a ability to mass build vertically.
    • Better support for lightmaps.
    • New and better eraser.
    • Define map scale when loading.
    • Better optimisation and performance!
    • Some other better experience and improvements (eg. saving options, camera for each map).
    • Better support for quads/2d and some bug fixes (I'm glad that only few very specific bug cases were found!).

    Now I'm in testing phase and will submit soon! :)

    Also thank you all for everything, you people are great! :)

    Random pic from testing (only 1 draw call!):
     
    Last edited: Feb 15, 2014
  25. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    Just Released v1.4 update!

    Video


    Update includes:
    - Tile Randomizer. Randomize your tile prefabs / rotation when building.
    - New and better Mass Builder. Ability to mass build vertically.
    - Better support for Lightmaps.
    - New and better Eraser.
    - Define map scale when loading.
    - Better optimization and performance.
    - Better experience in general and other improvements (eg. saving options, camera position, etc for each map).
    - Better support for 2D/Quads.
    - Very fast Editor loading.
    - Some bug fixes and other improvements.

    Thank You all for the support!
     
  26. Henrik-Poulsen

    Henrik-Poulsen

    Joined:
    Oct 18, 2012
    Posts:
    1
    Hello.
    I am curious about the inner workings of the performance of this and since there is no trial I can't do much else than ask here.

    How does it optimize the tiles? Does it just do batching/MeshCombine or does it combine them on vertex level?

    A trial would be really nice, since I am working on mobile and it's very important that it's performant enough.
     
  27. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    Hi,

    It combines meshes depending on the different materials with some additional optimisations (eg. I calculate how much it makes sense to have vertex in one batch). But usually it will be 1 draw call per different material.

    On the mobiles, it works quite well (I use on one of my RPG games for mobiles). It also depends how you prepare your tiles, if you make them in a smart way, you can make huge and difficult maps and it will work just fine.

    The only problem you might find if you have very big maps (eg. like in diablo2) is loading time. But you can solve that either loading maps offline in the editor or using LoadLevelAsync() at runtime (for example to unload different places). But it also might be not a big deal for user to wait additional seconds to load a map (which is common).

    let me know if you have any other questions!
     
  28. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    Small note, if you are getting error with the latest update "error CS0103: The name `Unwrapping' does not exist in the current context".

    The fix is on it's way!

    If you can't wait for the fix. You can open uteCombineChildren.cs and on line 90 insert #if UNITY_EDITOR and #endif around the Unwrapping.GenerateSecondaryUVSet(filter.mesh);

    It should look like this:
    Code (csharp):
    1.  
    2. #if UNITY_EDITOR
    3. Unwrapping.GenerateSecondaryUVSet(filter.mesh);
    4. #endif
    5.  
     
  29. danielpeiro

    danielpeiro

    Joined:
    Feb 14, 2014
    Posts:
    1
    suggestion: make transparent walls to the ceiling maps
     
  30. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    Yes, I'm actually started working on the layering feature (like in photoshop).
     
  31. cg_destro

    cg_destro

    Joined:
    Aug 13, 2013
    Posts:
    142
    This could be usefull :) I have one suggestion about that, make option to have only 1 object on single tile in one layer, so i you click it doesn't add new item but replace old one, it should work great with 2d game setup :) and make layer construction plane so everything is on the same height so it that we could do layer beased front, middle, top / background, foreground, effects or something like that :) should work rally good in 2d top tile type of games :)

    another question :) this editor working in play mode? so with this we can make something like in game editor to players? am I right? :)
     
  32. RabbitB

    RabbitB

    Joined:
    Mar 30, 2014
    Posts:
    5
    I agree with the sentiment cg_destro and others have displayed; this is a very awesome grid-based editor, but I'd like to see some form of runtime editing or at least an external file format that would allow players and end users to have editing capability. Support for user-generated content would be a huge plus, one that I don't think any other grid-based asset supports.
     
  33. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    @cg_destro, thanks for the suggestions! I will of course consider these suggestions for upcoming updates.
    @RabbitB,

    I'm actually working on the support of the Runtime and I've already done lots of it but it's still in progress as well. I want to make it really good and it would include stuff like (setting up custom tile preview textures, very easy exposed API, setting up tiles as countable/collectable and etc.).

    So keep updated, the updated might happen pretty soon. :)
     
  34. IsntCo

    IsntCo

    Joined:
    Apr 12, 2014
    Posts:
    146
    Hi proandrius - any new info on about runtime support or when this will be ready? This is the main feature I'm looking for before purchasing it - look forward to it!
     
  35. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    Seems lot of work and attention put in that plugin.
    Great quality and features , will buy it.
     
  36. JimRoot

    JimRoot

    Joined:
    Sep 11, 2013
    Posts:
    77
    yeah, me too somehow :D any news about that?
     
  37. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    I've just released beta 1 build for proTile Map Editor v2.0, which mainly contains whole new API for Runtime usage and couple of other features. If you want to get hands on it, send me an email to pro.andrius@gmail.com and don't forget your invoice number which proves that you have proTile Map Editor.
     
  38. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    UPDATE

    I've just released beta 2 build for proTile Map Editor v2.0, that contains:
    1. Runtime support with exposed all API for using map editor functionality at runtime.
    2. Layers (create separate layers when using Editor (workflow similar to photoshop layers)).
    3. Custom Tile previews for Runtime usage.
    4. Some other optimisations and improvements.

    If you are interested, write me to pro.andrius@gmail.com (include your invoice number).

    For those that already have beta 1 build, I will be sending beta 2 builds to you soon.
     
  39. Der_Kevin

    Der_Kevin

    Joined:
    Jan 2, 2013
    Posts:
    517
    just out of interest. what are u using to display the interface? ngui oder unity gui?
     
  40. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    I'm using Unity GUI. :)
     
  41. noanoa

    noanoa

    Joined:
    Apr 17, 2014
    Posts:
    225
    Hi, runtime support for map editor sounds great! Can it be done in a huge map(say like 10k objects...maybe 5k) without much lag? I have a similar(in a way) solution called Uniblocks and while it works great, building collider seem to be a costly process in unity. I'd like to know how much objects(tiles) you can edit/save/load on runtime editor without experiencing noticeable lag/stutter. Thanks!
     
    Last edited: Jun 2, 2014
  42. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    Well it depends on the Tiles ofc. I'm not using anything "special" to Instantiate tiles faster. As for for saving/editing it's pretty fast because it just file write.

    Runtime support (for proTile Map Editor v2.0) is only in beta right now. But I'm planning to implement Async load/save for Runtime, so you will not get any lag/stuttering.

    If you want to access beta send me your invoice number to pro.andrius@gmail.com and I'll send you a build. I'm planning to ship beta3/beta4 builds quite soon.
     
  43. noanoa

    noanoa

    Joined:
    Apr 17, 2014
    Posts:
    225
    Thanks for the answer. And good to know there will be async save/load feature :) Sounds like it can take care of the loading(instantiating) lag. Probably you already have some ideas but would be nice if it will load tiles according to player position(IE. tiles around player will be loaded first). I'm still waiting for official v2 release but it's definitely on top of my buy list now.
     
  44. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    Loading Async and starting from some point is interesting idea. I'll think about it. Thanks! :)
     
  45. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    Hello all, just released Beta 3 build for proTile Map Editor v2.0:
    • Tiles are now sorting by name (in proTileMapEditor).
    • LoadMapAsyncFromPoint. Start loading map Asynchronous from a specific point. Ability to change load speed, also define initial tile count load and then async.
    • Improved Batching (runtime and offline) it also semi-async so if your map is big it will not give huge spike to batch them but it will batch map in more frames).
    • Procedural Tile placement.
    • Runtime Batching.
    • Improved Runtime Tile creation.
    If you are interested, as usually ping me to pro.andrius@gmail.com with your invoice number.

    For more info see: http://protilemapeditor.com/beta/ReleaseNotes.rtf
     
    noanoa likes this.
  46. FeatureJuice

    FeatureJuice

    Joined:
    Feb 27, 2014
    Posts:
    2
    Hi -

    I just bought proTile and I'm starting to experiment with it.

    Is there a way to change the size of the grid-unit to which things snap? Right now I'm working with some existing assets that aren't the same scale as the default grid. Rescaling them might impact existing gameplay so I'd prefer to leave them as-is

    I know I can scale the resulting maps as part of the load behavior, but I want to place some of my gameplay prefabs within the map editor, so I'm hoping there's a way for the editor to support a custom size for the basic grid "square."

    Thanks - FeatureJuice
     
  47. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    I will have to check the code and see if it's easy to implement. I will ping you when I know. :)
     
    FeatureJuice likes this.
  48. proandrius

    proandrius

    Unity Technologies

    Joined:
    Dec 4, 2012
    Posts:
    544
    Hi, so I've checked the code, so it's possible to do that, but it kinda breaks lots of other snapping functionality, so it requires to adjust calculations in multiple places, which will require a while to implement. The reason I chose 1.0f as a default because it works perfectly in lots of situations because using different sizes increases miscalculation for floats, which might cause some other problems.

    I think I will implement this to choose the default "value" but it might only be as a part of v2.0 (or later), since it's not really that necessary for majority.

    But if you really need this I can spend some time to implement this faster in v2.0 and since you bought it I could send you a beta build with this when it's implemented.
     
    FeatureJuice likes this.
  49. FeatureJuice

    FeatureJuice

    Joined:
    Feb 27, 2014
    Posts:
    2
    Thanks for investigating! I'm still wrapping my head around the best workflow for the system, so I wouldn't want to alter your dev plans based on my kneejerk response. But I appreciate the offer!

    I have one other question: have you seen issues using proTile with source control software? I'm finding that if proTile's files are checked into Perforce, then I have to manually check them out in order for the editor to work. It seems to get confused because some of its files aren't writable, because they're in source control. Checking everything out is a workaround but a little messy.
     
  50. noanoa

    noanoa

    Joined:
    Apr 17, 2014
    Posts:
    225
    Hi, could I ask another question?
    I read somewhere(maybe proTile vs other editor thread) that you had an idea to implement sims like culling/clipping feature( Where the side of walls/roofs in front of camera is clipped ). Do you plan to add it in the future?