Search Unity

Assets [Outdated thread] Map Magic

Discussion in 'Works In Progress - Archive' started by Wright, Jul 29, 2015.

?

Vote for the plugin name:

Poll closed Feb 25, 2016.
  1. Map Magic

    5 vote(s)
    71.4%
  2. Map Magic Editor

    1 vote(s)
    14.3%
  3. Magic: Map Editor

    2 vote(s)
    28.6%
  4. Magic: Map Designer

    0 vote(s)
    0.0%
  5. Magic Editor

    0 vote(s)
    0.0%
  6. Magic: Land Editor

    1 vote(s)
    14.3%
  7. Land Magic

    1 vote(s)
    14.3%
  8. Terrain Magic

    0 vote(s)
    0.0%
  9. Level Magic

    0 vote(s)
    0.0%
  10. MagicLand

    1 vote(s)
    14.3%
Multiple votes are allowed.
Thread Status:
Not open for further replies.
  1. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    This is "Work In Progress" thread of the MapMagic World Generator. Since it was already released welcome to the new official thread in Assets section.

    MapMagic is a platform for the fast level creation and prototyping. It also supports generating of the infinite terrains.

    It uses node a interface to determine a creation logic: each generator (like noise, voronoi, blend, curve, erosion, scatter, forest, etc) is represented by the node on the graph. Once nodes’ inputs and outputs are connected the magic happens: a game map will be created without any human involvement. No need in a painstaking work for sculpting and drawing the vast terrains, placing a thousands of objects, painting a fields of grass: just give your orders to the plugin if form of the node graph and it will do a map automagically!
    9.jpg 8.jpg 16.jpg 13.jpg 19.jpg


    What it might be used for:
    • Terrain prototyping, as all the terrains created with the plugin could be modified manually the way Unity standard terrains could;
    • Creating of extensive open world territories. Let MapMagic do the main job, and then just detail the key places;
    • Creating horizon terrains, where player cannot walk but must see;
    • And since MapMagic can create new terrains when player walks through the land and weld them to the existing ones, it can create literally infinite worlds.
    Some other useful info:
    • It works with standard Unity terrains, uses standard splatmaps (alphamaps), and standard trees and grass/details feature. So if you are wondering if some shader or asset will be compatible with MapMagic then the answer is “yes” if it works with default Unity terrain.
    • Except the infinite terrain feature, terrains created with MapMagic do not require the plugin anymore. You can easily remove the plugin (to reduce the build size, compile time of for any other reason) and have your terrains unchanged.
    • It is seed-based. It gives the ability to create random unexplored worlds each time the player starts the game, and all of these world will be built using the same node-driven algorithm.
    The plugin is released.
    In this regard I'd like to recommend using this thread in Assets and Asset Store topic.
    For all the problems with MMWG you can contact me directly via email.

    Get Map Magic at the Asset Store
    Download Free Evaluation Version

    Web demo
    Web site
    Facebook page
    Video Tutorials
     
    Last edited: Jun 7, 2018
  2. Rick-

    Rick-

    Joined:
    Oct 13, 2014
    Posts:
    78
    Looks promissing!
    It would be cool if you could add something like generating a terrain based on a image,so the tool only generates landmass in the white part of the image as a example.
     
  3. moure

    moure

    Joined:
    Aug 18, 2013
    Posts:
    184
    Well that looks like a mini worldmachine inside unity combined with object scatter and placement tool. I think it looks awesome :)
    It would be easier to comment and give specific feedback if you could show us a list of the currently available nodes! For example i always wanted to be able to use the scatter/placement of one group of objects (the trees for example) as a node to control the scatter of another object (exlude grass to grow near trees, or scatter rocks near the trees, etc).
     
  4. c-Row

    c-Row

    Joined:
    Nov 10, 2009
    Posts:
    853
    That looks like a helpful starting point for anybody trying to create a large landmass to refine afterwards.
     
  5. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    Thanks for encouragement!

    Rick-, that is possible. One can import heightmap with "texture" generator and blend it with procedural terrain using "blend" generator and mask.

    moure, that's right, I'll write a list of generators with their short description. But firstly I'll make a little refactoring - right now generator system is a bit messy. However it already can exclude grass under the trees :)
     
    Rick- and moure like this.
  6. Reanimate_L

    Reanimate_L

    Joined:
    Oct 10, 2009
    Posts:
    2,788
    you almost made world machine in unity. . . . great work. . .
     
  7. Rick-

    Rick-

    Joined:
    Oct 13, 2014
    Posts:
    78
    When will this come out?
    It looks really great!
     
  8. AdanGrotesco

    AdanGrotesco

    Joined:
    Sep 26, 2015
    Posts:
    33
    Incredible.
     
  9. AdanGrotesco

    AdanGrotesco

    Joined:
    Sep 26, 2015
    Posts:
    33
    when you plan to drop a release? Im really interested.

    ¿It can make a infinite terrains?

    Sorry for my english
     
  10. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    Yes, it can make infinite terrains. That's what it all about )

    I plan to release it in the next couple of months: there are still things to do. Maybe I'll make an early access or demo version before the release.
     
    Rick- likes this.
  11. Rod-Galvao

    Rod-Galvao

    Joined:
    Dec 12, 2008
    Posts:
    210
    Will it generate Voxeland terrains also?
     
  12. Rombie

    Rombie

    Joined:
    Feb 18, 2015
    Posts:
    282
    This plugin sounds great. Can't wait for a release; early access would be awesome.
     
  13. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    Rod Galvao, I have plans to integrate it with Voxeland, but they will not be implemented in an initial release (and probably in first big update). I'm going to make a biomes support update first, and then modify both plugins to make them work together.

    Rombie, thanks ) I try my best to do it asap.
     
  14. _Simmo

    _Simmo

    Joined:
    Oct 20, 2013
    Posts:
    17
    This looks fantastic, I'm definitely interested :)
     
  15. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    I recently finished implementing multithreading, and found out that updating terrain automatically, without pressing "Generate" button could be very handy. This resulted in a new dynamic build feature, which almost brings WYSIWYG editing.

    PS If you'd like to receive news via facebook check new MM facebook page.
     
  16. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    I've added various blend modes for mixing two maps together. Some of them can blend interesting terrains. Just a short video if anyone interested:
     
    moure likes this.
  17. mensch-mueller

    mensch-mueller

    Joined:
    Nov 25, 2014
    Posts:
    156
    That looks great! Some of the blending modes emphasize the border to the next terrain chunk. Would this be fixed?
    An ETA when it´s available?

    Great work!
    Cheers
    Michael
     
  18. GiantGrey

    GiantGrey

    Joined:
    Jul 2, 2012
    Posts:
    266
    yes!! Worldmachine for Unity :) This is super impressive! Will you support heightmap import?
     
  19. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    mensch.mueller, thanks Michael! That's right, terrain welding algorithm is far from ideal and need to be refactored. And undo system too. And some other things. I think this will take two or three weeks with implementing all the features I plan to make, maybe a bit more, then Map Magic will be ready to release.

    propeller, thank you :) Map Magic has mush in common with WorldMachine, but I'm not sure that it could be called WorldMachine for Unity, as it lacks some of the WM features like vector drawing in layout mode, but it has some other really good stuff:
    1. MapMagic is not a terrain tool - or, to be precise, it's not only the terrain tool. About half of it's generators are dedicated to objects placements, so it can generate a whole level-design workflow except drawing initial maps :)
    2. MapMagic can create levels procedurally in runtime, bringing the feature of infinite non-repeating world. Wherever a player goes, he sees new unexplored land that was generated according rules that you create.

    PS yes, there is a map importer node :)
     
    mukki014 likes this.
  20. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,932
    So you could import your own height map and use the erosion feature? That is what excites me. No more back and forth in World Machine.
     
  21. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    Teila, offtopic: Erosion Brush can do exactly what is described, and it is already available.
     
    Last edited: Nov 26, 2015
  22. NightAvail

    NightAvail

    Joined:
    Feb 23, 2015
    Posts:
    13
    I'm really liking this! Keep up the good work!

    As for Erosion Brush... man I don't think I could live without it. Great for touching up mountains and various parts of the landscape.
     
  23. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,932
    And..I already have it! But I like the fact that you can erode the entire terrain. It is much nicer for continuity than passing a brush over bits at time. More realistic too. :)

    So I take it you cannot import your own height map? Nevermind, I see that you can.

    I really like your node generation of trees. Looks very detailed. :)
     
    Last edited: Nov 27, 2015
  24. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    NightAvail, Teila, thanks! And I'm very pleased to hear that you are using my plugins :)

    I think I'll make a short video devoted to map import generator.
     
    Teila likes this.
  25. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,932
    That would be great. :)
     
  26. Ariegos

    Ariegos

    Joined:
    Jun 20, 2015
    Posts:
    24
    @Wright
    I was thinking about getting Erosion brush while it is on sale, but now am not sure. When Map Magic comes out, would it still be needed?
     
  27. NightAvail

    NightAvail

    Joined:
    Feb 23, 2015
    Posts:
    13
    Erosion brush has a feature where you can apply erosion to the entire terrain, which sounds like something Map Magic would do as well. However, and I could be wrong, Map Magic doesn't sound like it would allow you to do touch ups to specific parts of the map, which is what I use the erosion brush for mainly.

    For instance, I created this using a tool similar to Map Magic initially, however I then used Erosion brush to create and touch up the mountains and coasts, even though I could have done some sort of erosion filter and added more noise.

    (Disclaimer: I'm not the best at map making, but I do like the results Erosion brush creates)


    (Up close image of mountains/lakes touched up with erosion brush)
    http://i.imgur.com/4HaTncT.png

    I hope I can get better with Erosion brush as it's been a fun tool to use. I'd endorse it, especially if it's on sale. :)
     
    Last edited: Nov 29, 2015
    Ariegos likes this.
  28. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    I don't think that Erosion Brush and Map Magic have much in common. The only thing that unites them is erosion algorithm, which is only one among the other algorithms in MM. But the main difference is in applicability:

    Erosion Brush is a tool for editing existing terrain. This is the way I see EB pipeline:
    - you already have a terrain exported from WorldMachine or created in any other terrain editor (including Unity itself)
    - you need to modify it according to level design concept (especially when this concept was changed during some play tests) - for example, you need to create a mountain, or a canyon, or something.
    - you add a hill with standard terrain means or EB noise in the exact location of your terrain.
    - you add EB component, and paint a hill with erosion so it gets nice and finished look so that it will fit in with the rest of the terrain

    Map Magic is designed not to edit, but to create an open level from scratch, including not only the terrain, but detail meshes (grass) and objects. It is far from a sculpting tool, you cannot paint a terrain with Map Magic.

    If you are going to use EB as a global brush only then you definitely need to wait for Map Magic, it will bring not only erosion and noise, but other generators like voronoi, heightmap blending, adjusting with curves and so on. And if you are going to sculpt some part of your terrain the way you like, or not interested in node interface and generators except erosion - choose EB - especially while it still on sale.
     
    Last edited: Nov 29, 2015
    Ariegos likes this.
  29. Ariegos

    Ariegos

    Joined:
    Jun 20, 2015
    Posts:
    24
    Have to say I'm very interested as your videos look fantastic. I'm not so much interested in infinite terrain, as I would like to add custom made villages, towns, cities, castles and whatnot. If it could output to Unity terrains that tile seamlessly, which I could edit using something like erosion brush and use as my game world that would be nice. Unless there is a way to have infinite world feature + custom modifications? You seem to have something like that in Voxeland, so perhaps that could be your plan.
     
  30. Andy3D

    Andy3D

    Joined:
    Jan 31, 2015
    Posts:
    42
    Hey, this looks really interesting, great work!
    Could this tool be used to create real-world terrains? Specifically, I'm interested in re-creating locations from real world heightmaps, and adding buildings etc maybe using Open Street Map data. Is it planned for this tool to be able to do that?
    How far is it from a working version / or beta?
    thanks
     
  31. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    It would become interesting if your plugin could also be driven by code to make random or maps with specific parameters at runtime.
     
  32. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    Ariegos, that's how Map Magic works: it has a set of selected ("nailed") terrains that are visible in editor and could be edited with any tools. All the "infinite" terrains appear only in playmode. For example, you can make a center of your level with nailed terrains and modify them, and use infinite terrains for horizon.

    Andy3D, you can add heightmap that could be scaled up to occupy quite a large area and add fractal noise and other procedural generators to bring some detail. This way you can create vast map-based location in MapMagic.
    There are still some things to do like terrain welding and some object generators. It is the matter of weeks: maybe two or three, if nothing else will pop up :)

    zenGarden, users can write custom generators, and I try my best to make such addon creation convenient.

    As I promised here is a short video devoted to heightmap import generator. Since it got an ability to import .raw files it is called "Raw Import" generator. I think I'll make s series of short videos devoted to any generator type, these videos could be used as a tutorials for the final version. Not sure about voice acting: is it really needed?
     
  33. AdanGrotesco

    AdanGrotesco

    Joined:
    Sep 26, 2015
    Posts:
    33
    This finally wil have voxeland implementation? I bought it recently i love so much, and i really interested on this tool too.
     
  34. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    I plan to add MapMagic support to Voxeland, however do not expect it right after release.
     
  35. Obsurveyor

    Obsurveyor

    Joined:
    Nov 22, 2012
    Posts:
    277
    Hey Wright, kind of an aside to this cool looking tool: What are you using to build that node graph for the Scene Manager? I need something just like that for a tool I'd like to write.
     
  36. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    Obsurveyor, nothing :) I've made my own node engine, I cannot say that it was easy or problem-less, but at least I've got the tool that works the way I want and could be easily modified the way I want, it could be used in my other plugins, and most important thing: it does not burden MM with additional licensing. So unfortunately I cannot advice any out of the box node solution.
     
  37. ge01f

    ge01f

    Joined:
    Nov 28, 2014
    Posts:
    121
    I'm definitely interested in this. I'll buy it the day it comes out.
     
  38. Rodolfo-Rubens

    Rodolfo-Rubens

    Joined:
    Nov 17, 2012
    Posts:
    1,197
    I asked on the video but I will ask here too just to be sure: Can I use this with a triplanar shader? Also, can I use this with any volumetric grass solution like infinigrass? And is this using unity built-in terrains/terrain colliders/etc .. ?
     
  39. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    ge01f, thanks! I'm really glad to see people interested in MM!

    Rodolfo Rubens, MM works with standard Unity terrains and standard Unity grass - this means that if there is a triplanar shader that can work with standard terrain splatmaps (alphamaps) then it will be compatible with MM. The same with grass - if it could be painted using Unity grass/detail paint tool - it will work with MM. And surely MM is using built-in terrain collision.
     
    Rodolfo-Rubens likes this.
  40. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    Finally it comes to the beta release. But I've got to test it twice before - and here is the scene I've made during the tests today. Most likely I'll use it as a demo scene.

    Web Build
     
    Rodolfo-Rubens likes this.
  41. AngryAnt

    AngryAnt

    Keyboard Operator

    Joined:
    Oct 25, 2005
    Posts:
    3,045
    Very nice work.

    I am curious: How pluggable is this setup at the moment? Say, would it be fairly straight forward to either:
    1. Add an easily compatible post-process tool - for instance for road/river generation.
    2. Add generation rules - IE "run this callback to verify before placing terrain item X".
    3. Generate non-terrain data based on the same data-set. Like scene markup.
     
  42. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    Thanks )

    I have spline generators in my roadmap - it's they who create such things as roads and rivers. Actually, some spline algorithms were implemented quite a long time ago when MapMagic even hadn't a concept (like this or that), but they will not will not be available yet until they are actualized, finished and tested.

    I didn't think about callbacks before placing objects, but I really like the idea. I think I gonna make a callback before every output generator apply (heightmap, splatmap, details, objects) so that user could process, modify or abort apply using their scripts. This will perfectly fit into existing system.

    Moreover, each generator is made as a module, so users can write their own generators without changing MapMagic code. So MapMagic plugin can support plugins ) Users can make their generation rules in a custom generator for processing objects and maps while generating, not only on apply to terrain.

    I guess it would be handy to output some data to a texture or something, but still I have no clear idea of how to implement it best, especially considering multiple terrain objects and infinite land. Hope users will have a specific requests, they will show what do users exactly want to make markups and how they want it.
     
    Benjii likes this.
  43. Yippie

    Yippie

    Joined:
    May 4, 2009
    Posts:
    227
     
    Sabathius likes this.
  44. AngryAnt

    AngryAnt

    Keyboard Operator

    Joined:
    Oct 25, 2005
    Posts:
    3,045
    Sounds good. So in case a project needed something like a spline generator, but not quite what you shipped with, would that best be added as a generator module as well?
     
  45. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    Yup, actually, everything MM does is done by generators. I would say that right generator can do almost anything, including custom spline operations.

    Yippie, :D:D:D
     
  46. ninjutsu3D

    ninjutsu3D

    Joined:
    Jan 31, 2014
    Posts:
    3
    This tool looks absolutly fantastic. One thing I can't wait a terrain tool to do is procedural rivers and lakes. With the water flowing, etc. Waterfall also, but I guess that's pushing it. ;)
    I know it's quite a complicated task, but would this tool be able to pull it off?

    Like, once the terrain is generated, you have a generator that picks highest - lowest points, draw a path, carve that path, draw poly, uv's, etc...

    Can't wait to see this tool released, keep up the good work!

    Edit: I know there is a spline based tool for unreal engine that creates the waterfall based on the steepness.

    Edit2: Just saw the other posts about rivers sorry!
     
  47. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    I'll try my best to implement rivers and roads, but it will take some time so they will not be included in initial version.

    I've made a short quick start video tutorial, just to guide users in MapMagic's beta demo when it will be released (and this should happen in the next few days!)
     
  48. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    Since it's Saturday I'd just like to share some of the screens I've made for Asset Store Key Images:



     
  49. ninjutsu3D

    ninjutsu3D

    Joined:
    Jan 31, 2014
    Posts:
    3
    Really nice, can't wait to try the tool...!

    A little constructive comments: in the last image, the two trees are duplicates and in the same angle, a little rotation randomness would be nice! I'm picky but since it's in the foreground that's a detail I would fix! :)

    Keep up the good work!
     
  50. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,276
    Tree rotation does not work in Unity - I don't know whether it was intended or just a bug, but since voting was closed for this one I think Unity is informed.

    I could make trees not the "terrain tree" objects, but usual transforms like stones, however since it's a demo scene I would like to demonstrate that MapMagic can set terrain trees.
     
    Last edited: Jan 24, 2016
Thread Status:
Not open for further replies.