Search Unity

Terrain Composer2 a next generation GPU powered terrain tool.

Discussion in 'Assets and Asset Store' started by eagle555, Sep 16, 2012.

  1. malkere

    malkere

    Joined:
    Dec 6, 2013
    Posts:
    1,212
    I am considering revisiting TC2 after a long time, I wanted to ask some questions for perhaps some updated information =D

    If I remember, multiple terrain systems were no problem. I'm talking about completely separate not connected TC2 systems within the same scene. Can anyone confirm this?

    Is there any built in support for floating point errors? Alternatively can I feasibly setup a custom noise generator and control the x/z offset to mimic a 20km shift, for example?

    Thanks!
     
  2. Anon32

    Anon32

    Joined:
    Oct 11, 2013
    Posts:
    28
  3. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,705
    Hi,

    I think you're the person (not sure with your username) I did a Skype call with yesterday to resolve this project files set to read only issue.


    Yes like Dev-A, I recommend to use WorldStreamer for this.

    Nathaniel
     
  4. malkere

    malkere

    Joined:
    Dec 6, 2013
    Posts:
    1,212
    I never considered WorldStreamer seriously as it is mostly advertised as use for streaming static worlds, where my games is hundreds of kilometers, all procedural, seed based... I do see a small section about it in their manual and know NatureManufacture is a smart guy/gal! I'll check into their forums see if I can find some more detailed answer. Thanks for the answers.
     
  5. passionfruit

    passionfruit

    Joined:
    Nov 2, 2013
    Posts:
    8
    Looks like the collision node doesn't work with single sided geometry unless the faces face down?

    eg If I put a unity plane object above the terrain with the plane normal facing up it has no effect on terrain height unless I flip the plane over so the normal points down.

    This would be fine except that I have a road tool that generates a single sided mesh (which faces up obviously :) )

    Edit - For now I have a script to generate an editor only copy of road with faces flipped which works with collision node.
     
    Last edited: Nov 24, 2017
    jwentzel likes this.
  6. Mattness

    Mattness

    Joined:
    Apr 18, 2017
    Posts:
    8
    You could also (temporarily) change the shader of the road mesh to a double sided shader
     
    passionfruit likes this.
  7. ppoppojoa

    ppoppojoa

    Joined:
    Oct 12, 2017
    Posts:
    5
    Hi, I purchased TC2 today.

    I have created unity project in D drive and tried to import TC2 package file, then IOException error occured.
    But no errors in C drive.

    I read two post of same issue with IOExcpetion, but there are no reply for resolve.
    How to remove errors ?

    I'm using unity 2017.2.
    Thanks
     
    Last edited: Nov 28, 2017
  8. red2blue

    red2blue

    Joined:
    Feb 26, 2013
    Posts:
    200
    Within the Mega Sale Terrain Composer 2 is just $11,25. You should grab it NOW!!!
     
  9. imgumby

    imgumby

    Joined:
    Nov 26, 2015
    Posts:
    122
    Yeah..not sure they meant to compound the sales but if I already didn't own a license I'd be jumping on that before they find out...:p
     
    hopeful likes this.
  10. WaltN

    WaltN

    Joined:
    May 18, 2017
    Posts:
    5
    Can Terrain Composer 2 help?

    I have a railroad terrain formed by many square tiles of equal size. Where tiles abut, they must be perfectly aligned. The elevations for a tile are defined conveniently by a RAW file and a pair of parameters (Offset, Scale), where the real (float) elevation, y, is defined by:

    float y = Offset + Scale * (float)yRaw

    where yRaw is a 16-bit unsigned integer from the RAW file.

    This does not imply, however, that the values 0 or 65535 appear anywhere in the RAW file. All that is understood is that all of the yRaw values in the RAW file are contained in the interval [0, 65535]. I have checked the real border values, y, of my abutting tiles, and the real elevation y-values pair up within a couple of millimeters.

    Because the Unity documentation does not tell me precisely what a Raw Import does with the yRaw values in terms of the GUI parameters, I cannot get my abutting tiles to align properly. The alignment is off by 1-2 meters, which is unacceptable. Oh, I could manually adjust abutting tiles by twiddling with the parameters, but there are too many tiles to make this practical.

    QUESTION: Does Terrain Composer 2 solve this multi-tile problem?
     
  11. Seneral

    Seneral

    Joined:
    Jun 2, 2014
    Posts:
    1,206
    One question that remains for me, if the RAW files need post-processing with the two values to obtain the real elevation, how did you manage it with the Unity Raw terrain import in the first place? Don't know of any way unity can do that.

    Provided I understood correctly, I think TC2 does work with that. You'd need to setup the grid of nodes up manually, reference the respective raw in each node and then adjust each node's Height and Scale properties so they transform the raw to the real elevation values.

    Do note that you're not limited to one terrain for each raw, TC2 handles multiple terrains very transparently so you only have to setup the node grid, which could then be projected to any terrain setup (even one terrain). Depends on you:)

    Mathematically TC2 should work fine, provided the parameters and the raw files DO match, the resulting nodes should also match perfectly fine... Also little tweaking is fast in TC2, unlike unity terrain import.

    Hope that helps....
     
  12. Game-Armada

    Game-Armada

    Joined:
    Apr 29, 2013
    Posts:
    66
    Hi!

    Can I make the tree generation a bit more dense? Suppose I could but I don't know what's next from here...
    Added a splat index for the tree generation and that's all so far.. please advise! Thx

    tc2_treedens.jpg
     
  13. lo-94

    lo-94

    Joined:
    Nov 1, 2013
    Posts:
    282
    Any plans to implement compatibility with SceneFusion? Being able to use your tool in a collaborative workflow via the shared scene view would be absolutely fantastic.

    The devs recently implemented terrain sync and ProBuilder support. I brought it up to them and they said that it's something that they're definitely interested in.
     
  14. WaltN

    WaltN

    Joined:
    May 18, 2017
    Posts:
    5
    Thanks for your remarks; they were somewhat helpful.

    The answer to your question (above) is that I took a couple of good guesses at how Unity might be handling the scaling and offset of the RAW values. With only Max and Min to play with (logically), the assumptions were limited. But, alas, my guesses were off, and the neighboring tiles are still not matched along the boundaries. If only Unity would document what it does with Raw Import.

    In the meantime, I'm working around the problem by building meshes on the fly. Now the challenge is how to paint the mesh. To that end, I'm evaluating available mesh painters.
     
  15. Seneral

    Seneral

    Joined:
    Jun 2, 2014
    Posts:
    1,206
    Alright, so you chose a mesh workflow then? Be careful about that, don't want to make such a decision because you feel like you're forced to it due to the way you import your raws! :)
    So yes, TC2 does work. If you really just want to import it and don't need anything else from TC2, you might get around writing an own importer for normal unity terrain, although a hassle...
     
  16. Seneral

    Seneral

    Joined:
    Jun 2, 2014
    Posts:
    1,206
    The tree layer node parent has an option to change the tree resolution per meter - default is 32, lower values will result in more trees:)
    Be careful though, if you edit by accident it can take quite a while to generate x million trees lol
     
  17. Seneral

    Seneral

    Joined:
    Jun 2, 2014
    Posts:
    1,206
    I'm not entirely sure, but from what I know about TC2, I would think it works directly... TC2 nodes are hierarchy objects (usually hidden, though), so provided SceneFusion detects changes on hidden objects and automatically posts them it should work.
    Then, each user generates the terrain from that data on it's own. So, NO terrain sync required!
    Some integration might be needed for extras... for the terrain to update for each user a change to the TC2 hierarchy needs to trigger a TC2 refresh/update for regeneration (one call to TC2.AutoGenerate). Also, to see WHAT others are editing, TC2 UI integration OR some node outline in the scene view would be needed, but that's only extra.
    Not using SceneFusion but these are some thoughts on it. Definitely interested to see it working though:)
     
  18. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,634
    Hi Nath, I been getting errors in 2017.1, I did a fresh install a few times, the first few times, It didn't show the asset in the Menu under windows... Now it does, 3rd install.... and now i'm getting error in play mode..: I used 2017.1 with another project and it was fine...

    This was a fresh install...

    NullReferenceException: Object reference not set to an instance of an object
    TerrainComposer2.TD.Init () (at Assets/TerrainComposer2/Scripts/Editor/TD.cs:214)
    TerrainComposer2.TC_NodeWindow.OnGUI () (at Assets/TerrainComposer2/Scripts/Editor/TC_NodeWindow.cs:143)
    System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
    Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation.
    System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:232)
    System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MethodBase.cs:115)
    UnityEditor.HostView.Invoke (System.String methodName, System.Object obj) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:272)
    UnityEditor.HostView.Invoke (System.String methodName) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:265)
    UnityEditor.HostView.InvokeOnGUI (Rect onGUIPosition) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:232)
    UnityEngine.GUIUtility:processEvent(Int32, IntPt
     
  19. Seneral

    Seneral

    Joined:
    Jun 2, 2014
    Posts:
    1,206
    Second that, although I found they're harmless...
     
  20. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,634

    Yes I know.. but annoying...and when I build....

    I reinstalled a 4th time, seems to be fixed now this happens a lot. but its been driving me nuts..
     
  21. Game-Armada

    Game-Armada

    Joined:
    Apr 29, 2013
    Posts:
    66
    Seneral: THX for the quick reply!
    Started to enjoy TC2 :)

    tc2_test1.jpg tc2_test1.jpg tc2_test2.jpg
     

    Attached Files:

    eaque, Seneral, Arganth and 1 other person like this.
  22. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,705
    Yes can use a double sided shader for this. The thing is the camera that captures it is under the terrain, so it needs to see it.

    That happens if TC2 can't write to it's default folder, probably because your project folder is 'read only'. It needs to copy and rename TC_GlobalSettingsDefault to TC_GlobalSettings:

    upload_2017-12-5_13-3-10.png

    You can do this manually and then it should work.


    That was a mistake, I already had my own sale with 50% discount and Unity added it by mistake to the sales. So taking 50% of already 50%. They corrected it the same day...

    A raw means 'Raw' there's no header. It doesn't contain size width/length or height. Height is 2 bytes which indeed gives 0 - 65535 height range which can be normalized to 0-1 with a float. Unity stretches the raw over the size of a terrain tile and and 65535 will be the max height of the terrain. So it all depends on your terrain tile settings.

    So I assume you use a raw file for each tile. With TC2 you can use one big raw file (up to 16k) and spread it over any amount of terrain tiles. Also you can precisely set the size of the stamp (raw file) in x,z and height.

    So if you combine all your tiles into 1 raw file (I assume you use something like WorldMachine) TC2 will automatically fix this issues for you.

    You can change the tree and object resolution in the main node on the left of the 'tree/object' button in the TC2 window.

    Yes like Seneral says each node in TC2 is an actual GameObject. They are hidden, but they can be made visible in the TC_Settings GameObject. So SceneFusion should be able to work with this. The only thing what would need to be done on the other connected clients is to refresh the TC2 window and to generate the terrain.

    Generate can be called with:
    TC_Generate.instance.Generate(false);

    Refresh can be called with:
    TC_Generate.instance.RefreshOutputReferences(6, true);

    Nathaniel
     
  23. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,705
    Did you use the latest update from here?
    https://forum.unity.com/threads/ter...red-terrain-tool.151365/page-121#post-3278663

    It should fix it. I need to look into fixing a few other things reported by mail/skype and then will submit it to the Asset Store.


    Wow looks great! ;)

    Nathaniel
     
  24. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,634
    Nope, didn't know it was there... was it pushed to the store? we have no way of knowing this stuff and don't have time to dig through forums and guess if we see updates or not... so it would be great if its some where we all can see... Thanks..


    I did get it to work like always, after 3-4 installs and un-installs. Happens all the time with fresh projects. The error didn't stop me from using anyways, but when I went to build then, it causes issues. but as I said I got it to work, and normally do.. It was annoying than anything.

    Maybe add to your forums ? have updates, or hot fixes tab. May be best way, I always check your web page. for things. Thanks.
     
    Last edited: Dec 5, 2017
  25. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,634
    No problem. I saved the update for now. as I do fresh installs alot.
     
  26. GodJammit

    GodJammit

    Joined:
    Feb 10, 2014
    Posts:
    32
    Hello @eagle555,

    I am using TC2 for a terrain in my project, and have been working on integrating Megasplat from the asset store.

    Unfortunately I've been running into an issue with the conversion process of the splat maps into the Megasplat format where, though it seems by looking at the texture generated that the splat map was extracted successfully, Megasplat is somehow unable to actually apply it, and instead fills the terrain with a single texture.

    I tried the same process with just a default unity terrain, and the Megasplat converter seems to work fine there. I've also been in contact with the Megasplat developer...

    Would you happen to know of any output differences in the way that splat maps are used in TC2 that might cause problems if read by Megasplat? I feel like I've seen that the two plugins are compatible, just not having luck integrating them.

    I've attached images to help illustrate my issue. Thanks for any reply!
     

    Attached Files:

  27. tapawafo

    tapawafo

    Joined:
    Jul 25, 2016
    Posts:
    170
    Hello,

    A few weeks ago I asked about runtime documentation but haven't gotten a reply - is this something you still plan on releasing? If so, do you have an estimate? Apologies for the double post, it just seems like you may have missed my previous one. Thanks.
     
    DiggingNebula8 likes this.
  28. SonGoku10c

    SonGoku10c

    Joined:
    Dec 9, 2017
    Posts:
    77
    Is there anywhere a video tutorial, which explains how to texture with TerrainComposer2 a terrain created with WorldComposer? Good would be a step by step one. ^^
     
    RabidBat and Next2VR like this.
  29. Next2VR

    Next2VR

    Joined:
    Jan 4, 2015
    Posts:
    5
    +1 for this ! I am trying out to get a WorldComposer terrain textured with TerrainComposer but as i am begginer it's a little bit hard to do it without documentation...

    Same for RTP, it's said "strong intergration" but i only get troubles when i try to integrate RTP with TerrainComposer, i am probably doing it wrong but it would be good to have a video or even text turorial.
     
  30. Next2VR

    Next2VR

    Joined:
    Jan 4, 2015
    Posts:
    5
    Ok, i managed to export the heighmap from world composer to terrain composer with this : http://www.terraincomposer.com/terraincomposer2-documentation/#stamps

    Could you then explain us the workflow to :

    Get the terrain Textured based on WorldComposer
    Get working RTP global color map
    Get working RTP global normal

    Conclusion : get the same result as in your demo :
    Good far looking as the exported terrain from worldComposer AND good close texturing looking.
     
    ftejada likes this.
  31. Next2VR

    Next2VR

    Joined:
    Jan 4, 2015
    Posts:
    5
  32. Korahan

    Korahan

    Joined:
    May 12, 2017
    Posts:
    14
    I useTC2 for some days now and I love it.

    If I generate the terrain at runtime, I have 2 issues with the collision though. First: My Character is falling through the terrain. Second: The collision node does not update the terrain.
    Both things work just fine if I create the terrain in the editor and start the game afterward.

    Any idea how to get this fixed?
     
  33. Seneral

    Seneral

    Joined:
    Jun 2, 2014
    Posts:
    1,206
    Hm, not sure about the falling-through part... make sure the created terrain have terrain colliders with valid terrain data attached, maybe?
    As for the collision node, I assume you have an object in the scene that is picked up by the collision node and when you move / change it you expect the terrain to update, right? You need to attach a script to that object which notifies TC2 about any changes and makes it regenerate. There is one included in TC2, not sure how it's called though...
    Seneral
     
  34. Korahan

    Korahan

    Joined:
    May 12, 2017
    Posts:
    14
    Thank you for your answer. I did some deeper research now.
    The collision is behaving very oddly. If I add a sphere with rigid body component it rolls downhill correctly. But if I add a FirstPersonPlayer it falls through. I fixed it by a simple snippet of code, that turns the collider off and on again. Summa summarum I think there is a bug in Unity itself according to terrain colliders and at runtime generated terrains, but I've not verified it yet.
    About the collision node:
    Yes, I had added the TC_Autogenerate script to the placed object prefab. Because of your answer, I found an error in the script. It only updates on transform changes, but the way I place the prefab, the transform never changes. So I fixed this. But ... still not working. It works only if I play in the editor and have "auto" activated on the TC2 Tab. I will add a call to the generator to my prefab placement script, which will solve this problem.
    Now I only have to find a way, to make the generator only update the modified tile, since I use 4x4 tiles in my game.
     
  35. SonGoku10c

    SonGoku10c

    Joined:
    Dec 9, 2017
    Posts:
    77
    first. bump. ^^ Question is still not answered
    And then another question. Is it possible to import Heightmap tiles? I have a 13x13 tiles terrain and I want to add a 13x13 tiles heightmap. The heightmap is very large, when it is one file. so I want to split it into many tiles to get better details.
     
    ftejada likes this.
  36. Seneral

    Seneral

    Joined:
    Jun 2, 2014
    Posts:
    1,206
    Nah, not an updated one, but basically you want to assign splats based on the color map from WC. So you can setup splat layers (a layer with one splat or a splat cluster) and add an image node using the colormap, finally using the color controls on that image node to filter by the desired color. That way you should be able to map splats to colors from the colormap:)

    There is an API to only generate a section of a terrain which I added support for for my TC2 Node Painter addon. Although not used by TC2 itself yet, you can specify a rect in terrain area space (0-1) to update. Needs a bit of logic to transform the spaces, will update later with a small snippet that I use. Given that it should only update said area:)
     
    Korahan likes this.
  37. SonGoku10c

    SonGoku10c

    Joined:
    Dec 9, 2017
    Posts:
    77
    sorry, but I have no idea of what you are saying. I started with unity only some days ago. My goal is to create a ~1600km x 1600km big map, that I can texture like in 24h demo (more or less this good ^^). The heightmap has a resolution of 1px = 1arcsec = more or less 30m (maybe 26m). I can't create a this massive terrain with only one terrain tile, so I created first 17x17 and used the 51374px x 51374px heightmap. It did create a terrain, but it is not very detailed. So I want to try to split the heightmap into tiles with a heightmap resolution of 4097 x 4097, but I don't know how to merge the now 13 x 13 tiles terrain with a size of 126401 per tile with my 13 x 13 heightmap tiles with a resolution of 4097 x 4097.

    I hope this is even possible. ^^
     
  38. Seneral

    Seneral

    Joined:
    Jun 2, 2014
    Posts:
    1,206
    Ah sorry, didn't know. Starting off with such a big world is... ambitious, and even that is underrated. Unity does not handle large worlds especially well (very bad tbh), not fun to do. It will require several performance optimizations to be feasable.

    With TC2 the tile setup and resolution can be changed after you did everything due to it's nature. So, just stick with a lower resolution for now and later get the right setup (just re-creating the terrain tiles in Terrain Area and resizing them to the desired resolution is fine).
    The heightmaps from WC are independant from that setup, so you don't need to update them all the time. It does get very tricky when you have multiple part-images if the heightmap/colormap though, so try to combine them in WC to a raw file that TC2 can read. Not sure about that part at the moment, long time not used WC.
    Sorry, can't give you a complete setup, but that's some basics to give a start.

    Yes it is possible, but as I said for such a large world you need a ton of optimizations. Using the default terrain system, you probably need a streaming solution such as World streamer, a well optimized terrain shader such as RTP/MicroSplat, and if you use vegetation, a specialized solution such as Vegetation Studio. Else you have no chance of remotely getting anything performant at that size. Sure, the 24 hour demo was capable of that, but Nathaniel and Thomasz are experts and know exactly where to optimize:)

    Seneral
     
  39. Korahan

    Korahan

    Joined:
    May 12, 2017
    Posts:
    14
    Now that would be somewhere in the middle of awesome and gorgeous! :)
     
  40. Seneral

    Seneral

    Joined:
    Jun 2, 2014
    Posts:
    1,206
    Ok, so for anyone working on large terrains with many tiles - I just made a quick change to TC2 to implement the existing partial generation feature in all of TC2 - it should speedup small, local changes on large, multi-tile terrains dramatically. Also, I finalized the vegetation studio integration:)
    Simple stuff, but if anyone wants, you can contact me. Distributed just like Nathaniels patches so should be no problem with him... I already send them to him.

    From that implementation, here's a snippet you can use to update a small portion of the terrain only.
    Do note that it internally generates the full tiles it covers and only fully optimizes those tiles out that have absolutely no coverage with the changed area. Still, the most costly operation of assigning to the unity terrain, is minimized:)

    Code (csharp):
    1. private Rect AARect; // Axis aligned rectangle occupied by this object in terrain-area space
    2.  
    3. /// <summary>
    4. /// Updates TC2 at the current position given the local bounds of the object
    5. /// </summary>
    6. public void TC2_Generate(Bounds bounds)
    7. {
    8.     if (TC_Area2D.current == null || TC_Area2D.current.currentTerrainArea == null)
    9.         TC.AutoGenerate();
    10.     else
    11.     { // Calculate occupied area of this object and transform it into terrain-area space of TC2
    12.         Vector2 areaSize = new Vector2(TC_Area2D.current.bounds.size.x * TC_Area2D.current.currentTerrainArea.tiles.x,
    13.                                         TC_Area2D.current.bounds.size.z * TC_Area2D.current.currentTerrainArea.tiles.y);
    14.         // Get area-space generate rect
    15.         Rect generateRect = new Rect(
    16.             transform.position.x / areaSize.x,
    17.             transform.position.z / areaSize.y,
    18.             Mathf.Abs(bounds.extents.x * transform.lossyScale.x / areaSize.x),
    19.             Mathf.Abs(bounds.extents.z * transform.lossyScale.z / areaSize.y));
    20.                
    21.         // Account for rotation on the y-axis
    22.         generateRect = RotateAARect(generateRect, transform.rotation.eulerAngles.y);
    23.         generateRect.position += new Vector2(0.5f - generateRect.size.x / 2, 0.5f - generateRect.size.y / 2);
    24.         generateRect.size *= 1.2f; // To be sure, and in cases Blur or Expand nodes are used
    25.  
    26.         // Trigger update on area including BOTH previous position AND current position
    27.         Rect oldAARect = AARect;
    28.         AARect = generateRect;
    29.         if (oldAARect.size.x >= 0 && oldAARect.size.y >= 0)
    30.             Mathw.EncapsulteRect(ref generateRect, oldAARect);
    31.         TC.AutoGenerate(generateRect);
    32.     }
    33. }
    Untested! Add this to a MonoBehaviour and pass the object's local bounds (e.g. renderer.bounds) into the generate method whenever anything changed (property, transform, etc.). Hope it works lol

    Best regards,
    Seneral
     
    ftejada likes this.
  41. SonGoku10c

    SonGoku10c

    Joined:
    Dec 9, 2017
    Posts:
    77
    Can I get it please? Lets give it a chance for massive terrains ^^
     
  42. SonGoku10c

    SonGoku10c

    Joined:
    Dec 9, 2017
    Posts:
    77
    A little bit Offtopic now about the GPU Erosion Simulation made by Seneral in german: ;)
    mal ein anderes Thema: deine GPU Erosion Simulation sieht echt gut. wenn man das noch mit Regen und co kombinieren würde, könnte man zum Bsp steigenede Flusspegel bei Hochwasser oder temporäre Seen erzeugen. Oder auch einfach Pfützen. Sowas vermisst man bei Spielen schon manchmal. ^^
     
    ftejada likes this.
  43. Korahan

    Korahan

    Joined:
    May 12, 2017
    Posts:
    14
    Thank you, Seneral! After you mentioned the "Rect"-part I already wrote a new version of the TC_AutoGenerate. I am no programmer so, it's all a mess (although it works, don't ask me why ...). I didn't even think of using bounds so I will replace it with yours. Just one thing to mention: "TC.AutoGenerate(generateRect);" doesn't work for me in runtime. I have to use "TC_Generate.instance.Generate (false, generateRect);" instead.

    Erosion? Ich bin eigentlich wegen Erosion von meinem eigenen Generator auf TC2 umgestiegen, nur um festzustellen, dass der auch keine hat. Oder irre ich da?
     
  44. Seneral

    Seneral

    Joined:
    Jun 2, 2014
    Posts:
    1,206
    Please keep it in english lol - very much prefer it anyways:)
    Regarding the patch, just PM me, even if it's only including scripts just as nathaniels patches, I'm still not confortable with putting it up for download publicly without his consent...

    @SonGoku10c Regarding erosion, yes, I do plan to extend it, although it is more targetted to world generation (edit-time, runtime, or ongoing simulation) rather than as a simple effect:) It is not very visually pleasing atm and I do not intend to make it either;) MicroSplat terrain shader has excellent stream and puddles support, that sounds more like what you want - for large scale stuff, yes, some sort of simuation combined with a third-party terrain shader sounds feasable:) If I'm correct, there already are some water-only-simulations out there, don't know to what extend though....
    @Korahan Nope, as of now TC2 has no built-in erosion... plan to integrate mine with TC2 to somewhat fix that:)
    Don't know about the roadmap though, and when I get to finish it. Definitely plan to finish it though!

    Hm yes, don't know if it's a bug or desired though... AutoGenerate is basically just a delayed and tile-based asynchronous wrapper around the direct Generate. Especially for runtime desireable, as Generate might lag the game if you input (0,0,1,1) for the whole terrain... Maybe the update isn't executed on runtime? Probably easy to fix though...
     
  45. alejandronop

    alejandronop

    Joined:
    Jul 7, 2017
    Posts:
    11
    Hello,
    Is it possible to generate terrain from the server side at runtime?
    I'm using linux.
     
  46. NotQuiteSmith

    NotQuiteSmith

    Joined:
    Oct 27, 2013
    Posts:
    92
    Hi,
    Is it possible to create rectangular terrains e.g. 2048x1024. I've a rectangular level and don't need the extra detail. If not, will it reduce the poly count if I just set the heightmap to 0 for the hidden area?
    Thanks!
     
  47. Tony-JIANG

    Tony-JIANG

    Joined:
    Feb 2, 2016
    Posts:
    7
    Hi,

    would you please reply my E-mail (skycoder.indie@hotmail.com)?

    Thanks!
     
    Last edited: Dec 25, 2017
  48. FreelanceGames

    FreelanceGames

    Joined:
    Nov 2, 2010
    Posts:
    26
    I've been using Terrain Composer 2 over the last few days and it feels more like a beta product. There are a lot of bugs and issue, the documentation is lacking, and updated YouTube videos are badly needed.

    I'd recommend you:

    - make a new YouTube video every week talking about some aspect of Terrain Composer.
    - create a new post for support so we can search for updated information (without all the old info getting in the way).

    That said, I can't enable the splat section. I've attached a screenshot. Basically, when you click "splat" is stays red? Here is the only error message (there are also 156 warnings).

    -------------------------------------------------
    NullReferenceException: Object reference not set to an instance of an object
    TerrainComposer2.TD.Init () (at Assets/TerrainComposer2/Scripts/Editor/TD.cs:214)
    TerrainComposer2.TC_NodeWindow.OnGUI () (at Assets/TerrainComposer2/Scripts/Editor/TC_NodeWindow.cs:143)
    System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
    Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation.
    System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:232)
    System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MethodBase.cs:115)
    UnityEditor.HostView.Invoke (System.String methodName, System.Object obj) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:295)
    UnityEditor.HostView.Invoke (System.String methodName) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:288)
    UnityEditor.HostView.InvokeOnGUI (Rect onGUIPosition) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:255)
    UnityEngine.GUIUtility:processEvent(Int32, IntPtr)
    ------------------------------------------------------

    This use to work fine, now when I re-load me scene it doesn't work. I may create a few YouTube videos pointing out some of the issues if I can find some time. I'm using Unity 2017.3.

    Thanks
    Sean
     

    Attached Files:

  49. kepesh

    kepesh

    Joined:
    Dec 29, 2017
    Posts:
    92
    Hi,

    In the object node: Is there a way to get the "Include terrain angle" to be applied after the rotation has been randomized? I have some stone meshes without bottom and I want them to be randomized in the Y-axis but still be aligned to the terrain.

    Thanks!
     
  50. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,634

    Does the same issues happen with 2017.1? or 2017.2 no offense not sure why anyone uses 2017.3 ... when its a beta version, and many issues will happen.... I hope your not in the middle of making a game....Because if you are, you will realize that using the newest Unity version is not suggested or wise.....anyways, I would see if you get the same errors in those... also what version of TC2 are you using?