Search Unity

MapMagic 2 - infinite procedural land generator

Discussion in 'Assets and Asset Store' started by Wright, Apr 24, 2020.

  1. Minzie

    Minzie

    Joined:
    Jul 26, 2019
    Posts:
    77
    Hello, I'm a newbie who just purchased Map Magic 2 bundle recently. I have several questions & hope you can help me:

    1. Will I be able to get realistic view (trees, grass, overall view) in standard pipeline only with MM2 without using other addon like vegetation studio pro, nature renderer, or the vegetation engine? If addon is recommended, which is the best between these 3 assets mentioned?

    2. During my first installation, I encountered some yellow error shown in the picture. I guess this doesn't matter, but I just share my experience in case this really is a bug..

    3. I accidentally save the created terrain (with trees, grass, objects) into .asset type file (I guess unity standard terrain) instead of the mapmagic graph. How to "stitch" this unity standard terrain with other terrain created from mapmagic graph? If "stamp" is recommended, will this also stamp my objects, trees, grass onto the new mapmagic graph?

    4. Can Spline create road, river, waterfall to match the terrain shape? Does this only "create the shape" of the road, river, etc. but still need other water tool like LUX, River Auto Material (R.A.M) or Crest Ocean to achieve the underwater look?

    5. I think this is not related to your asset, but can you help me? The nearer I scroll in the mouse into the terrain, the terrain will "curl" & "disappear. But If I scroll out, then I can see the whole terrain. I've changed the clipping planes of my camera into 0.01 - 1000 but still no changes. This makes me not able to see small placement like stones & grass which is very annoying.

    Could you please create more updated tutorial for the functions that MM2 can possible do?
     

    Attached Files:

  2. Minzie

    Minzie

    Joined:
    Jul 26, 2019
    Posts:
    77
    Another question on how to use Whittaker nodes. I created empty graph & try to "connect" the graph under Whittaker folder but it can't be added into the Whittaker node at all. Am I doing it correctly? Can you help to advise how I should do it? Is there any tutorial to show this set up? Thank you.

    Btw, I'm using below (if needed):
    Unity 2020.3.0f1 Personal
    Map Magic 2.1.2
    Windows 10

    upload_2021-3-24_23-46-37.png
     
  3. ScottKane

    ScottKane

    Joined:
    Aug 24, 2019
    Posts:
    81
    @Wright Is there any chance of seeing a MapMagic 2: Voxels or Voxeland 2 in the near future. Really hoping to build a voxel terrain using Splines, Biomes and VSPro
     
  4. AlanGreyjoy

    AlanGreyjoy

    Joined:
    Jul 25, 2014
    Posts:
    192
    That's interesting. I'll be buying the bundle soon. I just want to have water features lol. That's all. I heard that maybe RAM or even adding water to splines might be an option?
     
  5. Mr_Darkness

    Mr_Darkness

    Joined:
    Apr 6, 2020
    Posts:
    8
    I got a problem: grass from one biome spawns in others. For large objects, for example, stones and trees, I just changed the biome blend, but what to do with the grass that I spawn through the grass node
     
  6. valentinwinkelmann

    valentinwinkelmann

    Joined:
    Nov 3, 2014
    Posts:
    191
    When I create a terrain that loads a .tif file via an input graph, I can't resolve the MapMagic tiles above 512. Otherwise an error occurs.
    Thread failed: System.Exception: Couldn't upsize: src Den.Tools.CoordRect: offsetX:3053 offsetZ:-19 sizeX:1060 sizeZ:1060 is less than dst Den.Tools.CoordRect: offsetX:1009 offsetZ:-2066 sizeX:1057 sizeZ:1057
    at Den.Tools.Matrices.MatrixOps.Upsize (Den.Tools.Matrices.Matrix src, Den.Tools.Vector2D srcOffset, Den.Tools.Vector2D srcSize, Den.Tools.Matrices.Matrix dst) [0x00171] in E:\SSDWorkspace\Unity\One_Of_Us\Assets\MapMagic\Tools\Matrix\MatrixOps.cs:539
    at MapMagic.Nodes.MatrixGenerators.Import200.ImportWithEnlarge (Den.Tools.Matrices.MatrixWorld src, Den.Tools.Matrices.MatrixWorld dst, MapMagic.Terrains.Area area, MapMagic.Products.StopToken stop) [0x000fd] in E:\SSDWorkspace\Unity\One_Of_Us\Assets\MapMagic\Generators\Matrix\Runtime\MatrixInitial.cs:422
    at MapMagic.Nodes.MatrixGenerators.Import200.Generate (MapMagic.Products.TileData data, MapMagic.Products.StopToken stop) [0x00123] in E:\SSDWorkspace\Unity\One_Of_Us\Assets\MapMagic\Generators\Matrix\Runtime\MatrixInitial.cs:375
    at MapMagic.Nodes.Graph.GenerateRecursive (MapMagic.Nodes.Generator gen, MapMagic.Products.TileData data, MapMagic.Expose.Override ovd, MapMagic.Products.StopToken stop) [0x001ed] in E:\SSDWorkspace\Unity\One_Of_Us\Assets\MapMagic\Nodes\Graph.cs:913
    at MapMagic.Nodes.Graph.GenerateRecursive (MapMagic.Nodes.Generator gen, MapMagic.Products.TileData data, MapMagic.Expose.Override ovd, MapMagic.Products.StopToken stop) [0x00037] in E:\SSDWorkspace\Unity\One_Of_Us\Assets\MapMagic\Nodes\Graph.cs:870
    at MapMagic.Nodes.Graph.GenerateRecursive (MapMagic.Nodes.Generator gen, MapMagic.Products.TileData data, MapMagic.Expose.Override ovd, MapMagic.Products.StopToken stop) [0x0007b] in E:\SSDWorkspace\Unity\One_Of_Us\Assets\MapMagic\Nodes\Graph.cs:877
    at MapMagic.Nodes.Graph.GenerateRecursive (MapMagic.Nodes.Generator gen, MapMagic.Products.TileData data, MapMagic.Expose.Override ovd, MapMagic.Products.StopToken stop) [0x00037] in E:\SSDWorkspace\Unity\One_Of_Us\Assets\MapMagic\Nodes\Graph.cs:870
    at MapMagic.Nodes.Graph.Generate (MapMagic.Products.TileData data, MapMagic.Products.StopToken stop, MapMagic.Expose.Override ovd) [0x00039] in E:\SSDWorkspace\Unity\One_Of_Us\Assets\MapMagic\Nodes\Graph.cs:856
    at MapMagic.Terrains.TerrainTile.Generate (MapMagic.Nodes.Graph graph, MapMagic.Terrains.TerrainTile tile, MapMagic.Terrains.TerrainTile+DetailLevel det, MapMagic.Products.StopToken stop) [0x0004b] in E:\SSDWorkspace\Unity\One_Of_Us\Assets\MapMagic\Terrains\TerrainTile.cs:681
    at MapMagic.Terrains.TerrainTile+<>c__DisplayClass40_0.<StopEnqueueTask>b__0 () [0x00000] in E:\SSDWorkspace\Unity\One_Of_Us\Assets\MapMagic\Terrains\TerrainTile.cs:634
    at Den.Tools.Tasks.ThreadManager.TaskThreadAction (Den.Tools.Tasks.ThreadManager+Task task) [0x00000] in E:\SSDWorkspace\Unity\One_Of_Us\Assets\MapMagic\Tools\ThreadManager\ThreadManager.cs:138
    UnityEngine.Debug:LogError (object)
    Den.Tools.Tasks.ThreadManager:TaskThreadAction (Den.Tools.Tasks.ThreadManager/Task) (at Assets/MapMagic/Tools/ThreadManager/ThreadManager.cs:141)
    System.Threading.ThreadHelper:ThreadStart ()
     
  7. gozdagb

    gozdagb

    Joined:
    Feb 23, 2014
    Posts:
    71
    How to setup MM2 with VSPro? is there any tutorial? i got error when i connect to vs pro maps node

    Code (CSharp):
    1. Thread failed: System.IndexOutOfRangeException: Index was outside the bounds of the array.
    2.   at MapMagic.VegetationStudio.VSProMapsOut.BlendLayer (UnityEngine.Color[][] colors, MapMagic.Terrains.Area area, Den.Tools.Matrices.MatrixWorld matrix, Den.Tools.Matrices.MatrixWorld biomeMask, System.Single opacity, System.Int32 maskGroup, System.Int32 textureChannel, MapMagic.Products.StopToken stop) [0x00001] in G:\UnityProjects\Temp\MM2_MS\Assets\MapMagic\Compatibility\VegetationStudio\Runtime\VSProMapsOut.cs:105
    3.   at MapMagic.VegetationStudio.VSProMapsOut.Finalize (MapMagic.Products.TileData data, MapMagic.Products.StopToken stop) [0x000d8] in G:\UnityProjects\Temp\MM2_MS\Assets\MapMagic\Compatibility\VegetationStudio\Runtime\VSProMapsOut.cs:83
    4.   at MapMagic.Nodes.Graph.Finalize (MapMagic.Products.TileData data, MapMagic.Products.StopToken stop) [0x0003f] in G:\UnityProjects\Temp\MM2_MS\Assets\MapMagic\Nodes\Graph.cs:944
    5.   at MapMagic.Terrains.TerrainTile.Generate (MapMagic.Nodes.Graph graph, MapMagic.Terrains.TerrainTile tile, MapMagic.Terrains.TerrainTile+DetailLevel det, MapMagic.Products.StopToken stop) [0x0007d] in G:\UnityProjects\Temp\MM2_MS\Assets\MapMagic\Terrains\TerrainTile.cs:682
    6.   at MapMagic.Terrains.TerrainTile+<>c__DisplayClass40_1.<StopEnqueueTask>b__0 () [0x00000] in G:\UnityProjects\Temp\MM2_MS\Assets\MapMagic\Terrains\TerrainTile.cs:634
    7.   at Den.Tools.Tasks.ThreadManager.TaskThreadAction (Den.Tools.Tasks.ThreadManager+Task task) [0x00002] in G:\UnityProjects\Temp\MM2_MS\Assets\MapMagic\Tools\ThreadManager\ThreadManager.cs:138
    8. UnityEngine.Debug:LogError (object)
    9. Den.Tools.Tasks.ThreadManager:TaskThreadAction (Den.Tools.Tasks.ThreadManager/Task) (at Assets/MapMagic/Tools/ThreadManager/ThreadManager.cs:141)
    10. System.Threading.ThreadHelper:ThreadStart ()
    11.  
     
  8. AlanGreyjoy

    AlanGreyjoy

    Joined:
    Jul 25, 2014
    Posts:
    192
    Same. The video is outdated and the document is blank in the wiki....
     
  9. AlanGreyjoy

    AlanGreyjoy

    Joined:
    Jul 25, 2014
    Posts:
    192
    Figured it all out.

    You have to create a texture mask group in your VSPro biome settings. Everything works perfect after that.
     
  10. gilley033

    gilley033

    Joined:
    Jul 10, 2012
    Posts:
    1,191
    Which video did you watch? This one
    does include the step to add a texture mask group I believe.
     
  11. gilley033

    gilley033

    Joined:
    Jul 10, 2012
    Posts:
    1,191
    Hi, I don't understand the Mask node. What is Input B for? Shouldn't this node just have one input and the mask?
     
  12. AlanGreyjoy

    AlanGreyjoy

    Joined:
    Jul 25, 2014
    Posts:
    192
    Yea man, that video is out. Don't worry about all those steps. VSPro reads the terrain just fine. Just use VSPro like normal after you create a texture mask. Google "VSPro texture group mask" You create that mask ON the Vegetation Studio Script.
     
  13. gilley033

    gilley033

    Joined:
    Jul 10, 2012
    Posts:
    1,191
    Let me first clarify, I was saying the video does include the step to create a texture mask group. I followed the instructions in the video (at least up to where it says to create the texture mask group in VSPro) and everything worked perfectly.

    However, what I understand you to be saying is that you don't use the VS Pro Maps Node on your graph? How does that work? What texture mask is VSPro reading from if not the one generated by the Map Magic graph?

    Or, are you using Terrain texture rules? This does not work for me unless I have some sort of VS node on my graph; not sure why, maybe Map Magic only sets the textures on VS if there is a VS node in the graph.

    Please, elaborate on whether you have a VS node on your graph? Because if you do, I'm not sure what steps from the video you are talking about that are outdated or not needed?

    Best Regards
     
  14. gilley033

    gilley033

    Joined:
    Jul 10, 2012
    Posts:
    1,191
    Sorry to double post twice in one day!

    I had this artifact (not sure if that is the correct name for it) on my terrain (an issue with the seams between neighboring terrain in reality).

    artifact.jpg

    I was able to get rid of it by changing my Erosion node's Durability value from .9 to 1. I tested with a couple of other non 1 values and they produced a similar artifact. Could there be a bug with this node?
     
    AlanGreyjoy likes this.
  15. gozdagb

    gozdagb

    Joined:
    Feb 23, 2014
    Posts:
    71
    @AlanGreyjoy thanks, it looks like there is no error with it, but still not working properly, at least with microsplat

    Edited. Texture mask ruler just work fine

    Can someone confirm that Runtime Prefab Spawner is not working?
     
    Last edited: Mar 26, 2021
  16. Minzie

    Minzie

    Joined:
    Jul 26, 2019
    Posts:
    77
    Is having stretchy texture at the edge of each tile normal? I tried adjusting the curve & it somewhat "smoothen" the edge and also make the stretchy texture better on 1 side of the terrain tile. But worse in other side of the tile. However it's solved when changing the erosion durability to 1 (just like @gilley033). Is this normal?

    And also, the "disable" option in generator doesn't seem to work for me. It still show the tree, grass, stone, even after I disable them.

    upload_2021-3-26_18-49-24.png
     
    Last edited: Mar 26, 2021
  17. AlanGreyjoy

    AlanGreyjoy

    Joined:
    Jul 25, 2014
    Posts:
    192
    this is what gilley said
    "I was able to get rid of it by changing my Erosion node's Durability value from .9 to 1. I tested with a couple of other non 1 values and they produced a similar artifact. Could there be a bug with this node?"
     
  18. AlanGreyjoy

    AlanGreyjoy

    Joined:
    Jul 25, 2014
    Posts:
    192

    UnassignedReferenceException: The variable VegetationStudioTerrainObjectList of VegetationSystemPro has not been assigned.
    You probably need to assign the VegetationStudioTerrainObjectList variable of the VegetationSystemPro script in the inspector.
    UnityEngine.Object.get_name () (at <42a5878ce129403083acccf18e43363f>:0)
    AwesomeTechnologies.VegetationSystem.VegetationSystemProEditor.DrawTextureMasksInspector () (at Assets/AwesomeTechnologies/VegetationStudioPro/Editor/VegetationSystemPro/Editor/VegetationSystemProEditor.cs:422)
    AwesomeTechnologies.VegetationSystem.VegetationSystemProEditor.OnInspectorGUI () (at Assets/AwesomeTechnologies/VegetationStudioPro/Editor/VegetationSystemPro/Editor/VegetationSystemProEditor.cs:123)
    UnityEditor.UIElements.InspectorElement+<>c__DisplayClass59_0.<CreateIMGUIInspectorFromEditor>b__0 () (at <1d96ce257f0e45ff836d157d33fd933d>:0)
    UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&)


    Get this everytime I click on VSPro script. I assume its talking about the VSPro tile scripts on the terrains. Un pinning them fixes it. But pinning a terrain back throw the error again and I can not open vegetation studio pro script.
     
  19. AlanGreyjoy

    AlanGreyjoy

    Joined:
    Jul 25, 2014
    Posts:
    192
    upload_2021-3-26_8-57-58.png
    upload_2021-3-26_8-58-36.png

    I don't use objects, as the whole point of VSPro, is already handle that for me. VSPro is a lot easier to setup.
     
  20. valentinwinkelmann

    valentinwinkelmann

    Joined:
    Nov 3, 2014
    Posts:
    191
    @Wright Can the TerrainTile size be queried as a variable in the Expose system And how can I override and retrieve Expose variables from C#?
     
  21. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,277
    MapMagic is a bit different asset. It generates terrain and places objects, but it doesn't affect the way trees or grass looks.
    Yes, it comes with demo tree models that use demo tree shaders for standard pipeline, feel free to use them in your game, but it's not the main purpose of the asset.

    It's a warning, and it's a shader one. It won't affect anything, however I will try to get rid of it in next version.

    If you saved terrain tile it still should be affected by MapMagic, and each time you change the graph the asset will change. If you saved it as a copy - then there's no way to update it, but you can save pinned tile once more and overwrite the old file.

    MapMagic doesn't contain special water shaders, and yet it isn't compatible with RAM.

    It's hard to say for sure what's happening, but feel free to post the screenshot or video and I'll try to help at least with an advance.

    You've got an error in the console - could you please send the error text to me? It will also help a lot if you can send graph as well.

    I plan complete re-make of Voxeland, so I'm afraid it won't happen soon. I've made some studies, made some core features in c++, but can't even imagine when it will be ready. And currently I've got Brush and Splines as my main priority.

    I have RAM compatibility in plans in scope of Splines module - it's a top requested feature on ideainformer. However I've got do do some preliminary work - change splines engine, make mesh creation, etc. So I'm afraid it won't be soon.

    Are you sure that first biome mask is 100% zero in these areas? Could you please take a screenshot of your graph?

    Could you please send me the imported map asset, the graph, and the scene (and their meta files - only 6 files, no need to compile the whole project or package)?

    Looks like the erosion algorithms are exceeding the tile borders.

    A short description of the way MM works: It generates all of the tiles independently - no tile can access any data from the other tile. When generating no tile can get the results of the neighbor ready tiles. Otherwise the generate result will differ depending on which tiles are ready - i.e. from what side the player will approach tile. And obviously, there is no way to get the result from non-generated tiles other than to force generating them, and they will force generating others, and so on.

    Each tile has margins that are actually a part of a neighbor terrain. This data isn't applied to terrain, but still is generated. In this case it seems that the erosion requires bigger margins - they could be increased in MapMagic object -> Tile Settings -> Main Margins (measured in pixels).

    This leads to some Vegetation Studio error. Check if any of the terrains is assigned in VegetationSystemPro script - maybe VS can't work without them?

    Expose system exposes the values from the nodes in the graph - while tile size as a MM object variable. Same graph could be used in different MM objects with different tile sizes, and changing the graph in MM object will not change tile size.

    Changing exposed with scripts.

    Wow, so many posts since Wednesday! Sorry if I missed something, and feel free to tag me if you still need me to look into some problem!
     
    whkona and valentinwinkelmann like this.
  22. Mr_Darkness

    Mr_Darkness

    Joined:
    Apr 6, 2020
    Posts:
    8
    Here is my graph:
     

    Attached Files:

  23. gilley033

    gilley033

    Joined:
    Jul 10, 2012
    Posts:
    1,191
    Hmm, but you are using the VS Pro Maps node, but with no channel selected? I wonder why this works. Does this node automatically select the group when it is unselected (and since I'm guessing you only have one group in VSPro, it's probably selecting it). If that is the case, then I think that you are in fact using Map Magic to decide on object/grass placement (via the map it generates) rather than VS Pro.
     
  24. moltke

    moltke

    Joined:
    Apr 28, 2019
    Posts:
    109
    I have meadows terrains then brown grass terrain and then forest terrain.

    How might I go about making it so that the brown grass only appears around the outskirts of the forest terrain texture?

    the brown grass is my back ground layer- i have tried making it so that the green grass is removed around the leaves by making it subtract the DarkGreen Grass but this doesn't seem to work very well, i can sometimes get about a meter of no green grass around the forest leave textures, but i would like this area larger and can't seem to figure out how to do this - so i tried a bunch of these nodes to see if i could blend them in a way that might work.

    Any ideas how I could achieve this?
    upload_2021-3-27_9-58-51.png
     
  25. Jairusx

    Jairusx

    Joined:
    Jun 25, 2020
    Posts:
    62
    Hi. I am trying to blend different biomes. Nothing fancy there, but I am getting this weird "bug"
    Am I missing something?
    https://imgur.com/a/VyraZeV
     
  26. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,277
    This graph mixes all of the biomes so that no biome is ever reaches 100% and never lowered to 0%. If you will have even 1% of biome blending you can still see some grass bushes here and there, and will still get some texture mixing from other biomes.

    Try increasing the contrast for each map with the Contrast node.

    And it's not related, but using Noise Detail = 0 instead of the blur node would be better for performance reasons.

    As far as I can see the channel is selected, but no mask is assigned. MM reads all possible VS pro masks before displaying this node, so there might be no mask rule in VSPro settings assigned (timing in video of how to do it. Yes, video is pretty old, but as far as I know nothing has changed in VSPro since that time).

    Subtract is a "minus" arithmetic operation. When you apply layer with this blend mode it just subtracts this map value from previous blended result. I'm not sure if that is what you are trying to achieve.

    If you want to lower some value with the other map then Multiply might suit better.

    And as for me I wouldn't mix all of the layers in one blend node. Try to use unique blend for each of the grass channels. Combining them is the way to optimize the graph, but using per-channel blends will make it easier to understand your graph.

    Could you please make a screenshot of your graph? It's not clear what the nodes are and what parameters they are using at gif.
     
  27. Daahrien

    Daahrien

    Joined:
    Dec 5, 2016
    Posts:
    100
    Any idea why my infinite terrain is invisible in the build? (Editor play works fine).

    Just the textures dont show, objects show.

    Edit.- Nvm. I got it fixed.
     
    Last edited: Mar 28, 2021
  28. moltke

    moltke

    Joined:
    Apr 28, 2019
    Posts:
    109
    let me re-word; how can I get a terrain texture to only appear on the edges of another terrain texture

    I want brown grass to appear around the edges of the forest leaves texture

    once I accomplish that how can I widen the brown grass edging
     
  29. valentinwinkelmann

    valentinwinkelmann

    Joined:
    Nov 3, 2014
    Posts:
    191
    @Wright
    I am currently working with imported raw terrain data. I'm scaling this to a fairly large terrain and then using noise overlays and masks to take the whole thing as the basis for my Procedural world.

    However, it glitches with imported materials somehow really extreme around. How can I fix this?



    The terrain is really very large (of course never all tiles are displayed at the same time). The scaling of the raw import node is 150.
    Is there a maximum size that cannot be exceeded? does this lead to these strange artifacts?

    Another problem is the whittaker node, which unfortunately does not work at all and is totally bugged.
    I have also tested the Whittaker Node in a completely blank project ( Unity 2020.3.2f1 ). It does not work.
     
    Last edited: Mar 30, 2021
  30. protopop

    protopop

    Joined:
    May 19, 2009
    Posts:
    1,561
    Im moving from MapMagic 1 to 2, I deleted MM1 and installed MM2

    I am trying to find all of the texture nodes in a graph so I can change their size. This is how I did it in MM1, how would I do it in MM2?

    Code (CSharp):
    1. foreach (TextureInput ti in MapMagic.instance.gens.GeneratorsOfType<TextureInput>()){
    2.                             ti.scale = 2000;
    3. }

    Thank you:)
     
    Last edited: Mar 29, 2021
  31. Minzie

    Minzie

    Joined:
    Jul 26, 2019
    Posts:
    77
    @Wright, thanks for your reply. I've sent you email on this 2 days ago plus additional error I have. Please take a look when you have free time :)

    I'm currently trying free version of Microsplat, but having issue in showing the texture directly after I add in texture layer or when there's changes in the microsplat material. I did try to pin & unpin, connect & disconnect the nodes to output. but show no result. However, I found out that it will work if I deselect & reselect "splats" under "apply type" in microsplat node. But again, using this step still can't update the texture for "draft" tile that is visible in range. it still shows as black :( I'm not sure if you have addressed this previously, but could you kindly advise again?
     
  32. Mr_Darkness

    Mr_Darkness

    Joined:
    Apr 6, 2020
    Posts:
    8
    Thanks a lot for your help, I have one more question. I am using enviro and want to make each biome have a different weather, for this I want to use weather zones (from enviro). But for them to work correctly, i need to get the areas of the biomes, in order to then use them as a areas for the weather zones, the question is: is it possible to somehow get biome areas and then create a mesh from them, which I can use as the areas of the weather zone. Will be cool, if it all worked automatically in run-time. (I understand that isn't possible to make buil-in ways, so maybe you can help me with this or at least show where i can read about this).
     
  33. nobluff67

    nobluff67

    Joined:
    Nov 3, 2016
    Posts:
    338
    I am on version 2.0.8, I know a lot of users installed the latest version 2.1.2, and had issues with existing graphs. Have these issues been resolved or are there certain steps that need to be followed?

    I have all extensions installed, however am only using objects and splines atm.
     
  34. protopop

    protopop

    Joined:
    May 19, 2009
    Posts:
    1,561
    Someone on the forum created a node that lets you know what zone you are in. Maybe it will help? It’s a few posts down on this page

    https://forum.unity.com/threads/rel...nite-procedural-land-generator.875470/page-10
     
    Mr_Darkness likes this.
  35. gozdagb

    gozdagb

    Joined:
    Feb 23, 2014
    Posts:
    71
    Hi, when i spawn object with "Biome Mask Area" from Vegetation studio pro, i got this error

    Code (CSharp):
    1. NullReferenceException: Object reference not set to an instance of an object
    2. AwesomeTechnologies.VegetationStudio.VegetationStudioManager.Instance_RemoveBiomeMask (AwesomeTechnologies.VegetationSystem.Biomes.PolygonBiomeMask maskArea) (at Assets/AwesomeTechnologies/VegetationStudioPro/Runtime/Manager/VegetationStudioManager_Biomes.cs:102)
    3. AwesomeTechnologies.VegetationStudio.VegetationStudioManager.RemoveBiomeMask (AwesomeTechnologies.VegetationSystem.Biomes.PolygonBiomeMask maskArea) (at Assets/AwesomeTechnologies/VegetationStudioPro/Runtime/Manager/VegetationStudioManager_Biomes.cs:33)
    4. AwesomeTechnologies.VegetationSystem.Biomes.BiomeMaskArea.OnDisable () (at Assets/AwesomeTechnologies/VegetationStudioPro/Runtime/VegetationSystemPro/Biomes/BiomeMaskArea.cs:144)
    5. UnityEngine.GameObject:SetActive(Boolean)
    6. MapMagic.Terrains.TerrainTile:SwitchLod() (at Assets/MapMagic/Terrains/TerrainTile.cs:203)
    7. MapMagic.Terrains.TerrainTile:StartGenerate(Graph, Boolean, Boolean) (at Assets/MapMagic/Terrains/TerrainTile.cs:579)
    8. MapMagic.Core.MapMagicObject:StartGenerate(Boolean, Boolean) (at Assets/MapMagic/Core/MapMagicObject.cs:285)
    9. MapMagic.Nodes.GUI.GraphWindow:DrawToolbar() (at Assets/MapMagic/Nodes/Editor/GraphWindow.cs:570)
    10. Den.Tools.GUI.UI:Draw(Action, Boolean, Rect) (at Assets/MapMagic/Tools/GUI/Editor/UI.cs:253)
    11. MapMagic.Nodes.GUI.GraphWindow:OnGUI() (at Assets/MapMagic/Nodes/Editor/GraphWindow.cs:204)
    12. UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
    To repair this i need to unpin all terrains, and pin again, but error is back every regenerate or any change, for testing is very inconvenient,
    thanks.

    Unity 2019.4.21f1
    MM2 2.1.2
    VSPRO 1.3.4
     
    valentinwinkelmann likes this.
  36. gozdagb

    gozdagb

    Joined:
    Feb 23, 2014
    Posts:
    71
    if you replace the package field in "VS PRO OBJS" with a different one, then in all nodes should be automatically replaced with new ones? It seems to me that this should not be replaced, and each node could use different packages.
     
    Refeas likes this.
  37. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,277
    If you mean that you want brown grass to appear on transitions between textures - i.e. where one texture is blending to another then it's better to mask transition areas with Curve:
    GrassOnBorders.jpg

    Theoretically yes, if the import size is so big that each tile becomes less than a pixel then there might be an issue. However I'm not sure that 150 is that big - I guess it's smaller than imported map resolution. Could you please temporary replace the Import node with Noise or Voronoi to see if the issue is in import?

    Thanks for reporting the issue. I could reproduce and fix it. New version is currently pending Unity review, so it won't have this fix included. So here is the patch for current one and upcoming 2.1.3.

    The same way, but now iterate in graph:
    mapMagicObject.graph.GeneratorsOfType<Import200>()

    Note that Import is in MapMagic.Nodes.MatrixGenerators namespace.

    Could you please try the Whittaker patch?

    gozdagb, duminju1990: could you please add compatibility reports to ideainformer? I will look into them a bit later, and this way it will be much easier to track them. Thanks!
     
    Last edited: Mar 30, 2021
  38. ge01f

    ge01f

    Joined:
    Nov 28, 2014
    Posts:
    121
    How is the MM Brush coming along for release? I thought it was already out, but just imported the latest version, and i dont see the Brush component in it. I have the Map Magic 2 Bundle, is it included in that?

    Really looking forward to using it!
     
  39. protopop

    protopop

    Joined:
    May 19, 2009
    Posts:
    1,561
    Thank you that worked. I used

    Code (CSharp):
    1. foreach (Import200 ti in mapMagicObject.graph.GeneratorsOfType<Import200>()) {
    2.                         ti.scale = mapScale;
    3.                         ti.offset.x = mapOffset;
    4.                         ti.offset.y = mapOffset;
    5.                }
    Im curious why you use 200 after import (import200), is it just a random number to prevent conflicts?
     
    Last edited: Mar 31, 2021
  40. protopop

    protopop

    Joined:
    May 19, 2009
    Posts:
    1,561
    When I try to change the Graph seed by code, it says the type or namespace NOISE isn't found

    Code (CSharp):
    1.  mapMagicObject.graph.random = new Noise(sd, 32768);
    Is the Noise type under a certain namespace?
     
  41. protopop

    protopop

    Joined:
    May 19, 2009
    Posts:
    1,561
    How do we drag around the graph? Im holding down the alt key like in MM1 but it doesnt move. Is there another way? Im on Mac using Unity 2019.2p8
     
    Last edited: Mar 31, 2021
  42. valentinwinkelmann

    valentinwinkelmann

    Joined:
    Nov 3, 2014
    Posts:
    191

    To the first problem: Yes I tested it with Noise. there it does not occur. only with the Import node, but also only with a Tile resolution of 257. Since this occurs only there is not so bad now. with 512 I do not see the error.

    To the second problem: Thanks for the quick fix, unfortunately it doesn't fix the problem, it only fixes the problem that the nodes detach as soon as you zoom out. the Whittaker node still doesn't seem to work. As soon as the Whittaker node is used in the graph, any change (to any node) results in an error that looks like this:
    Code (CSharp):
    1. Draw Generator MapMagic.Nodes.Biomes.Whittaker200 failed:
    2. System.InvalidCastException: Specified cast is not valid.
    3.   at (wrapper castclass) System.Object.__castclass_with_cache(object,intptr,intptr)
    4.   at MapMagic.Nodes.Biomes.BiomesSet200.ForceClearBiome (MapMagic.Nodes.IBiome layer, MapMagic.Products.TileData data) [0x00014] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Generators\Biomes\Runtime\BiomesSet.cs:230
    5.   at MapMagic.Nodes.Biomes.Whittaker200.ForceClear (MapMagic.Products.TileData data) [0x0000e] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Generators\Biomes\Runtime\Whittaker.cs:240
    6.   at MapMagic.Nodes.Graph.ClearGenerator (MapMagic.Nodes.Generator gen, MapMagic.Products.TileData data) [0x00035] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Graph.cs:694
    7.   at MapMagic.Core.MapMagicObject.Clear (MapMagic.Nodes.Generator gen) [0x0002e] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Core\MapMagicObject.cs:245
    8.   at MapMagic.Core.MapMagicObject.Refresh (MapMagic.Nodes.Generator gen1, MapMagic.Nodes.Generator gen2) [0x00012] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Core\MapMagicObject.cs:224
    9.   at MapMagic.Nodes.GUI.GraphWindow.RefreshMapMagic (System.Boolean all, MapMagic.Nodes.Generator gen1, MapMagic.Nodes.Generator gen2) [0x0002d] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Editor\GraphWindow.cs:67
    10.   at MapMagic.Nodes.GUI.GraphWindow.RefreshMapMagic (MapMagic.Nodes.Generator gen) [0x00000] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Editor\GraphWindow.cs:58
    11.   at MapMagic.Nodes.GUI.GeneratorDraw.DrawGenerator (MapMagic.Nodes.Generator gen, MapMagic.Nodes.Graph graph, System.Boolean selected, System.Boolean activeLinks, MapMagic.Nodes.GeneratorMenuAttribute menuAtt) [0x0021c] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Editor\GeneratorDraw.cs:143
    12.   at MapMagic.Nodes.GUI.GeneratorDraw.DrawGeneratorOrPortal (MapMagic.Nodes.Generator gen, MapMagic.Nodes.Graph graph, System.Boolean isMini, System.Boolean selected, System.Boolean activeLinks) [0x00025] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Editor\GeneratorDraw.cs:50
    13. UnityEngine.Debug:LogError (object)
    14. MapMagic.Nodes.GUI.GeneratorDraw:DrawGeneratorOrPortal (MapMagic.Nodes.Generator,MapMagic.Nodes.Graph,bool,bool,bool) (at Assets/MapMagic/Nodes/Editor/GeneratorDraw.cs:56)
    15. MapMagic.Nodes.GUI.GraphWindow:DrawGraph () (at Assets/MapMagic/Nodes/Editor/GraphWindow.cs:337)
    16. Den.Tools.GUI.UI:Draw (System.Action,bool,UnityEngine.Rect) (at Assets/MapMagic/Tools/GUI/Editor/UI.cs:253)
    17. MapMagic.Nodes.GUI.GraphWindow:OnGUI () (at Assets/MapMagic/Nodes/Editor/GraphWindow.cs:200)
    18. UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)
    Code (CSharp):
    1. Draw Generator MapMagic.Nodes.MatrixGenerators.SimpleForm200 failed:
    2. System.InvalidCastException: Specified cast is not valid.
    3.   at (wrapper castclass) System.Object.__castclass_with_cache(object,intptr,intptr)
    4.   at MapMagic.Nodes.Biomes.BiomesSet200.CheckClearBiome (MapMagic.Nodes.IBiome layer, MapMagic.Products.TileData data) [0x00014] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Generators\Biomes\Runtime\BiomesSet.cs:192
    5.   at MapMagic.Nodes.Biomes.Whittaker200.CheckClear (MapMagic.Products.TileData data) [0x00010] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Generators\Biomes\Runtime\Whittaker.cs:231
    6.   at MapMagic.Nodes.Graph.ClearChangedRecursive (MapMagic.Nodes.Generator gen, MapMagic.Products.TileData data, System.Collections.Generic.Dictionary`2[TKey,TValue] processed) [0x00129] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Graph.cs:775
    7.   at MapMagic.Nodes.Graph.ClearChanged (MapMagic.Products.TileData data) [0x00031] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Graph.cs:719
    8.   at MapMagic.Nodes.Graph.ClearGenerator (MapMagic.Nodes.Generator gen, MapMagic.Products.TileData data) [0x00059] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Graph.cs:701
    9.   at MapMagic.Core.MapMagicObject.Clear (MapMagic.Nodes.Generator gen) [0x0002e] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Core\MapMagicObject.cs:245
    10.   at MapMagic.Core.MapMagicObject.Refresh (MapMagic.Nodes.Generator gen1, MapMagic.Nodes.Generator gen2) [0x00012] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Core\MapMagicObject.cs:224
    11.   at MapMagic.Nodes.GUI.GraphWindow.RefreshMapMagic (System.Boolean all, MapMagic.Nodes.Generator gen1, MapMagic.Nodes.Generator gen2) [0x0002d] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Editor\GraphWindow.cs:67
    12.   at MapMagic.Nodes.GUI.GraphWindow.RefreshMapMagic (MapMagic.Nodes.Generator gen) [0x00000] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Editor\GraphWindow.cs:58
    13.   at MapMagic.Nodes.GUI.GeneratorDraw.DrawGenerator (MapMagic.Nodes.Generator gen, MapMagic.Nodes.Graph graph, System.Boolean selected, System.Boolean activeLinks, MapMagic.Nodes.GeneratorMenuAttribute menuAtt) [0x0021c] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Editor\GeneratorDraw.cs:143
    14.   at MapMagic.Nodes.GUI.GeneratorDraw.DrawGeneratorOrPortal (MapMagic.Nodes.Generator gen, MapMagic.Nodes.Graph graph, System.Boolean isMini, System.Boolean selected, System.Boolean activeLinks) [0x00025] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Editor\GeneratorDraw.cs:50
    15. UnityEngine.Debug:LogError (object)
    16. MapMagic.Nodes.GUI.GeneratorDraw:DrawGeneratorOrPortal (MapMagic.Nodes.Generator,MapMagic.Nodes.Graph,bool,bool,bool) (at Assets/MapMagic/Nodes/Editor/GeneratorDraw.cs:56)
    17. MapMagic.Nodes.GUI.GraphWindow:DrawGraph () (at Assets/MapMagic/Nodes/Editor/GraphWindow.cs:337)
    18. Den.Tools.GUI.UI:Draw (System.Action,bool,UnityEngine.Rect) (at Assets/MapMagic/Tools/GUI/Editor/UI.cs:253)
    19. MapMagic.Nodes.GUI.GraphWindow:OnGUI () (at Assets/MapMagic/Nodes/Editor/GraphWindow.cs:200)
    20. UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)
    21.  
    Code (CSharp):
    1. Draw Generator MapMagic.Nodes.MatrixGenerators.Noise200 failed:
    2. System.InvalidCastException: Specified cast is not valid.
    3.   at (wrapper castclass) System.Object.__castclass_with_cache(object,intptr,intptr)
    4.   at MapMagic.Nodes.Biomes.BiomesSet200.CheckClearBiome (MapMagic.Nodes.IBiome layer, MapMagic.Products.TileData data) [0x00014] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Generators\Biomes\Runtime\BiomesSet.cs:192
    5.   at MapMagic.Nodes.Biomes.Whittaker200.CheckClear (MapMagic.Products.TileData data) [0x00010] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Generators\Biomes\Runtime\Whittaker.cs:231
    6.   at MapMagic.Nodes.Graph.ClearChangedRecursive (MapMagic.Nodes.Generator gen, MapMagic.Products.TileData data, System.Collections.Generic.Dictionary`2[TKey,TValue] processed) [0x00129] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Graph.cs:775
    7.   at MapMagic.Nodes.Graph.ClearChanged (MapMagic.Products.TileData data) [0x00031] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Graph.cs:719
    8.   at MapMagic.Nodes.Graph.ClearGenerator (MapMagic.Nodes.Generator gen, MapMagic.Products.TileData data) [0x00059] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Graph.cs:701
    9.   at MapMagic.Core.MapMagicObject.Clear (MapMagic.Nodes.Generator gen) [0x0002e] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Core\MapMagicObject.cs:245
    10.   at MapMagic.Core.MapMagicObject.Refresh (MapMagic.Nodes.Generator gen1, MapMagic.Nodes.Generator gen2) [0x00012] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Core\MapMagicObject.cs:224
    11.   at MapMagic.Nodes.GUI.GraphWindow.RefreshMapMagic (System.Boolean all, MapMagic.Nodes.Generator gen1, MapMagic.Nodes.Generator gen2) [0x0002d] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Editor\GraphWindow.cs:67
    12.   at MapMagic.Nodes.GUI.GraphWindow.RefreshMapMagic (MapMagic.Nodes.Generator gen) [0x00000] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Editor\GraphWindow.cs:58
    13.   at MapMagic.Nodes.GUI.GeneratorDraw.DrawGenerator (MapMagic.Nodes.Generator gen, MapMagic.Nodes.Graph graph, System.Boolean selected, System.Boolean activeLinks, MapMagic.Nodes.GeneratorMenuAttribute menuAtt) [0x0021c] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Editor\GeneratorDraw.cs:143
    14.   at MapMagic.Nodes.GUI.GeneratorDraw.DrawGeneratorOrPortal (MapMagic.Nodes.Generator gen, MapMagic.Nodes.Graph graph, System.Boolean isMini, System.Boolean selected, System.Boolean activeLinks) [0x00025] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Editor\GeneratorDraw.cs:50
    15. UnityEngine.Debug:LogError (object)
    16. MapMagic.Nodes.GUI.GeneratorDraw:DrawGeneratorOrPortal (MapMagic.Nodes.Generator,MapMagic.Nodes.Graph,bool,bool,bool) (at Assets/MapMagic/Nodes/Editor/GeneratorDraw.cs:56)
    17. MapMagic.Nodes.GUI.GraphWindow:DrawGraph () (at Assets/MapMagic/Nodes/Editor/GraphWindow.cs:337)
    18. Den.Tools.GUI.UI:Draw (System.Action,bool,UnityEngine.Rect) (at Assets/MapMagic/Tools/GUI/Editor/UI.cs:253)
    19. MapMagic.Nodes.GUI.GraphWindow:OnGUI () (at Assets/MapMagic/Nodes/Editor/GraphWindow.cs:200)
    20. UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)
    21.  
    Code (CSharp):
    1. Draw Generator MapMagic.Nodes.MatrixGenerators.Constant200 failed:
    2. System.InvalidCastException: Specified cast is not valid.
    3.   at (wrapper castclass) System.Object.__castclass_with_cache(object,intptr,intptr)
    4.   at MapMagic.Nodes.Biomes.BiomesSet200.CheckClearBiome (MapMagic.Nodes.IBiome layer, MapMagic.Products.TileData data) [0x00014] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Generators\Biomes\Runtime\BiomesSet.cs:192
    5.   at MapMagic.Nodes.Biomes.Whittaker200.CheckClear (MapMagic.Products.TileData data) [0x00010] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Generators\Biomes\Runtime\Whittaker.cs:231
    6.   at MapMagic.Nodes.Graph.ClearChangedRecursive (MapMagic.Nodes.Generator gen, MapMagic.Products.TileData data, System.Collections.Generic.Dictionary`2[TKey,TValue] processed) [0x00129] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Graph.cs:775
    7.   at MapMagic.Nodes.Graph.ClearChanged (MapMagic.Products.TileData data) [0x00031] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Graph.cs:719
    8.   at MapMagic.Nodes.Graph.ClearGenerator (MapMagic.Nodes.Generator gen, MapMagic.Products.TileData data) [0x00059] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Graph.cs:701
    9.   at MapMagic.Core.MapMagicObject.Clear (MapMagic.Nodes.Generator gen) [0x0002e] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Core\MapMagicObject.cs:245
    10.   at MapMagic.Core.MapMagicObject.Refresh (MapMagic.Nodes.Generator gen1, MapMagic.Nodes.Generator gen2) [0x00012] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Core\MapMagicObject.cs:224
    11.   at MapMagic.Nodes.GUI.GraphWindow.RefreshMapMagic (System.Boolean all, MapMagic.Nodes.Generator gen1, MapMagic.Nodes.Generator gen2) [0x0002d] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Editor\GraphWindow.cs:67
    12.   at MapMagic.Nodes.GUI.GraphWindow.RefreshMapMagic (MapMagic.Nodes.Generator gen) [0x00000] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Editor\GraphWindow.cs:58
    13.   at MapMagic.Nodes.GUI.GeneratorDraw.DrawGenerator (MapMagic.Nodes.Generator gen, MapMagic.Nodes.Graph graph, System.Boolean selected, System.Boolean activeLinks, MapMagic.Nodes.GeneratorMenuAttribute menuAtt) [0x0021c] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Editor\GeneratorDraw.cs:143
    14.   at MapMagic.Nodes.GUI.GeneratorDraw.DrawGeneratorOrPortal (MapMagic.Nodes.Generator gen, MapMagic.Nodes.Graph graph, System.Boolean isMini, System.Boolean selected, System.Boolean activeLinks) [0x00025] in E:\SSDWorkspace\Unity\Steampunkians\Assets\MapMagic\Nodes\Editor\GeneratorDraw.cs:50
    15. UnityEngine.Debug:LogError (object)
    16. MapMagic.Nodes.GUI.GeneratorDraw:DrawGeneratorOrPortal (MapMagic.Nodes.Generator,MapMagic.Nodes.Graph,bool,bool,bool) (at Assets/MapMagic/Nodes/Editor/GeneratorDraw.cs:56)
    17. MapMagic.Nodes.GUI.GraphWindow:DrawGraph () (at Assets/MapMagic/Nodes/Editor/GraphWindow.cs:337)
    18. Den.Tools.GUI.UI:Draw (System.Action,bool,UnityEngine.Rect) (at Assets/MapMagic/Tools/GUI/Editor/UI.cs:253)
    19. MapMagic.Nodes.GUI.GraphWindow:OnGUI () (at Assets/MapMagic/Nodes/Editor/GraphWindow.cs:200)
    20. UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)
    21.  
    The same errors occurred previously, you can see that in the last video.
    I can repeat this for any node, the same errors always occur, with different names.

    The Whittaker node is equipped with a test biome (on all 10 possible Whittaker biomes). This test biome does nothing else than putting a noise with an intensity of 0.1 on a Height Output node.

    The whittaker node itself is also connected to a Noise in the Moisture input and to a Simple Form GradientZ in the Temperature input.

    upload_2021-3-31_8-17-54.png
    Using the Whittaker node in the main graph

    upload_2021-3-31_8-18-11.png
    The very simple TestBiome graph


    So the problem is not fixed by the patch, only the purely cosmetic effect that the node connections disconnect when zooming out.
    Edit: also tested in a new blank project. Same here, it doesn't work.
     
    Last edited: Mar 31, 2021
  43. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,277
    I've submitted brush module this week, and currently it's pending Unity review. But you can already download Beta (a bit older, but I had no critical issues fixed).

    Make sure that 'MapMagic' and 'Den.Tools' namespaces are used.

    It may conflict with scene view rotation. However this fix might resolve it (Tools/Gui/Editor).

    Sorry, not all files were included. Try re-downloading it.
     
    protopop and ge01f like this.
  44. moltke

    moltke

    Joined:
    Apr 28, 2019
    Posts:
    109
    thank you this gave me ideas to get roughly what I need much appreciate your time
     
  45. ge01f

    ge01f

    Joined:
    Nov 28, 2014
    Posts:
    121
    I installed the Brush beta, and that worked fine. I went to modify Forest preset using the VS Pro Object, and it looks like that is not yet supported in Brush. Is that going to be coming soon?

    It says "Not assigned to current Map Magic Object", and "Graph is not in scene", but I have a shot showing that it is in the scene.

    Screen Shot 2021-04-01 at 7.02.57 AM.png

    It wont access any of the VS Pro objects when I add them, so I cant assign them like I would in a normal graph.

    Also, will it work with Microsplat textures?

    One last thing, there appears to be a missing Generator in the Forest graph. I have the MM2 Bundle, so I think I should have access to any of the generators needed. Is that not the case? It's the Generator between Textures and Contract in the Forest preset graph, it doesnt list it's name just says "Unknown".
     
    Last edited: Apr 1, 2021
  46. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,277
    The brush is an editor tool, from this point of view working with it is similar to terrain editing with built-in editor. When you edit terrain with the usual editor it modifies the standard splatmaps/grass masks/trees, and then 3rd party asset converts it to it's own data. There is no need in special outputs since real-time terrain change is not supposed.

    Thanks for reporting it! It is a Pick node, can you please try creating it yourself to see if it's properly loaded: Add -> Map Set -> Pick, and then assign a terrain layer you want to plant the trees on.
     
    protopop likes this.
  47. ge01f

    ge01f

    Joined:
    Nov 28, 2014
    Posts:
    121
    I dont see an option for Map Set. I have 2.1.2 and Ive deleted the folder and re-imported, and then brought in the Beta Brush unity package you referenced, since that is not out yet. I checked under every option path, and there is no Map Set or Pick there. Doing a search for Pick does not find it.

    Screen Shot 2021-04-02 at 1.12.03 AM.png

    Isnt this why you have a VS output node in regular MM2, because it doesnt do this properly? Painting in VS Pro's Persistent Storage mode seems to be totally outside of the normal splatmap/grass/tree method of Unity.

    It doesnt add the trees to the Unity terrain, my unity terrain is empty but I have VS Pro trees on it. Dont I need a special VS Output node to do the same thing in Brush?

    It's OK if it's not on your schedule to create this, Im just trying to understand where it stands so I can move forward. I think brush is the best way to do the massive terrain painting I want to do, so Ive been waiting for it, but maybe I have to write the VS output node myself, that's OK if thats the case. I can do that.
     
  48. valentinwinkelmann

    valentinwinkelmann

    Joined:
    Nov 3, 2014
    Posts:
    191
    Yes, unfortunately it seems that you still have forgotten files or the fix itself does not work. I re-downloaded, imported and tried the Whittaker node again, exactly the same as before...
     
  49. Binary42

    Binary42

    Joined:
    Aug 15, 2013
    Posts:
    207
    Hi, i get this error with resource intense graphs. For ex a SimpleGraph with MicroSplat (24x 4kTex) or VSPro (NatureM Biome). After applying the fix the error message is gone but terrains remain unwelded. Edit: 2020.3.0f1 / MM2 2.1.2
     
  50. Wright

    Wright

    Joined:
    Feb 26, 2013
    Posts:
    2,277
    Thanks for reporting this! I've added map sets to beta, new version could be downloaded on the beta page.

    I'm not sure it's the matter of files. I suggest to wait for 2.1.3 release. It should have this fix included, and for me it seems to be working, but I might be just missing something. This version is currently pending Unity review, so it should take a couple of days.

    Do you mean the main (not draft) terrains are not welding? This error is related with welding drafts, so theoretically it should not create seams between the main tiles. It seems that there might be the other issue then.