Search Unity

Terrain Composer2 a next generation GPU powered terrain tool.

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

  1. whitav8r

    whitav8r

    Joined:
    Jul 26, 2016
    Posts:
    3
    @Nathaniel,
    I am interested in using TerrainComposer2 for creating my own flight simulator for Oculus Rift. Would you recommend getting UnityFS, World Composer, and perhaps any other tools that you might recommend. Initially, I want to focus on terrain with trees and minimal buildings with some lakes. I would like to fly low in a helicopter.
    I have an i7 (6 cores)running at 4.3Ghz and a Nvidia 970 - should I be able to expect 75->90fps as long as I don't make settings too high. From your one video above, it sounds like that is something you have tried. I am a newbie with Unity - do I simply want to start with an OVRPlayerController and then add the terrain? Do you perhaps have a single demo terrain for me to try out?

    Thanks much

    Dave
     
  2. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,507
    How many terrain tiles do you use and with what terrain size? I will try to reproduce the issue and will fix it.

    I forgot to put it, is corrected now :)...With repeat it continuously regenerates every frame, shouldn't be used I put it there for testing.

    What size of landscape are you aiming for? If you want real world terrain then I recommend WC, especially for the shadow removal which makes the satellite images usable. I think satellite images with embedded shadows look quite bad and the sun needs to be at a fixed position to match with the shadows. Yes and also recommend UnityFS, I used it in my WC trailer to record the plane. Although I don't think it has heli physics yet. They were working on very realistic heli physics. You can contact them and ask about it.

    Further I recommend to use Time Of Day (clouds, atmospheric scattering and day/night cycle) and RTPv3 for better terrain rendering. If you want the flying area to be limited then Horizon[ON] is perfect for making the terrain look huge.

    Yes it's all about resolutions and Unity terrain settings. Grass would be a bit problematic and recommend to use Unature for it. RTPv3 can help with global normal/color map. So you can use lower resolution heightmap with higher resolution normal map for terrain to look very detailed while still having good performance.

    Yes you can start with a terrain and OVRPlayerController. You start with learning WC or TC2 first, and then learn each asset that you will use one by one, instead of importing all of them at once as then it can get tricky.

    Nathaniel
     
    Last edited: Jul 26, 2016
  3. errandfox

    errandfox

    Joined:
    Apr 22, 2015
    Posts:
    42
    There is no option to save changes to splat textures?? I've got multi terrains and I wanted to change one of the splat textures as i didn't like how it looks. I click the + sign to add a new one, but as soon as I move from that inspector window it reverts back to how it was before; there isn't any apply button?? Or is there?? I tried with auto refresh splat off and on, and tried adding new or insert, but still the same, it won't save changes. Is this something simple I've missed?
     
  4. whitav8r

    whitav8r

    Joined:
    Jul 26, 2016
    Posts:
    3
    Nathaniel,
    Thanks much for the advice on terrain products! And thanks for such excellent products for generating terrain. One question, where do you get the aerial imagery and heightmaps? Also, can I provide my own imagery? I would be happy with making medium (20nmx20nm) patches as far as area size - large enough to have the area look photoreal with a distant horizon.I would like some trees and small amounts of random vegetation and then some realistic buildings in sparsely populated areas. How do we make airports - especially runways? (simple general aviation ones). I like to use 0.5 meter resolution where I am landing.
    I noticed in War Thunder that some of their terrain has what I think are bump-mapped areas - there is very fine detail like furrows in the fields - it really looks great down at the treetops. Is there a way to do some of that with Unity?
    Are you seeing pretty smooth performance with Oculus Rift VR (or Vive) and your terrain with a UnityFS aircraft? Is there an aircraft with a 3D instrument panel?
    I really appreciate your taking time to answer these questions - a flight simulation is a huge project but I can see that Unity with a great toolset can make it feasible. I have flown FSX/Prepar3D with FlyInside, DCS World, and War Thunder all in VR but this seems like a very user customizable environment. I don't intend to make a product - it's just that my career has been in flight sim and I haven't had as much fun as when VR started this last year.
     
  5. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    2,142
    As someone with a previous version of TerrainComposer (deprecated at 1.96 apparently), I'm a little bit surprised at the upgrade price. Can you tell me what features have been included thus far with 2.2 that are not in my version?
     
  6. camel82106

    camel82106

    Joined:
    Jul 2, 2013
    Posts:
    302
    Honestly, upgrade is too cheap. It's easier to grasp and you see visualization of your configuration thanks to node based UI with live visual previews. And biggest difference for me (as satisfied user of TC1) are basically instant results. It will save you so much tweaking time. And that that's of course not all.
     
  7. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    2,142
    I'll be honest, I'm not up to date on what "node based UI" means. I suppose I'll have to look at a preview video or something to get a grasp of the difference.
     
  8. ldl01031

    ldl01031

    Joined:
    May 1, 2014
    Posts:
    35
    I've been a fan of TC for quite a while. I got TC2 and was pretty darn lost at first. Then it clicked. I can say with confidence that if you build terrains, this is the way to go. I can build really nice terrains quite quickly and all aspects are under my control (with TC1 I was a bit intimidated and stuck closely to the examples - not so at all with TC2 :) ).
     
  9. JBT27

    JBT27

    Joined:
    Jul 13, 2016
    Posts:
    196
    There are some very fine terrain tools for Unity, but TC2 is probably the most versatile, and expandable, thanks to the nodal system. Nodal is definitely the way to go, and TC2 has an interface which is intuitive. I'll be honest and say I'm still not that keen on the fact that I have to keep repositioning the interface with the MMB, zooming in and out too, and the labels become unreadable very quickly when zooming out. I have two HD monitors and I tend to move TC2 over to one entire monitor, or use half of one; being able to dock windows in projects is essential here, as TC2 needs quite a lot of space, in my opinion at least. But its usability is stunning, and of all the terrain assets I have, TC2 is the one that feels like you can do anything with it, and do it well.
     
  10. 3r5k3n

    3r5k3n

    Joined:
    Jun 17, 2013
    Posts:
    17
    Yes I did, I made it smaller
     
  11. jonfinlay

    jonfinlay

    Joined:
    Aug 25, 2015
    Posts:
    535
    I haven't been able to spawn any trees. The layer just shows a few different spots of colour, not like in your video.

    I'm also getting this error in the console, even after installing the patch:

    ArgumentOutOfRangeException: Argument is out of range.
    Parameter name: index
    System.Collections.Generic.List`1[TerrainComposer2.TC_SelectItem].get_Item (Int32 index) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/List.cs:633)
    TerrainComposer2.TC_Generate.ComputeTree () (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:750)
    TerrainComposer2.TC_Generate.Compute (Int32 outputId) (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:137)
    TerrainComposer2.TC_Generate.RunGenerateStack () (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:126)
    TerrainComposer2.TC_Generate.MyUpdate () (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:108)
    UnityEditor.EditorApplication.Internal_CallUpdateFunctions () (at C:/buildslave/unity/build/artifacts/generated/common/editor/EditorApplicationBindings.gen.cs:217)
     
    Last edited: Jul 27, 2016
  12. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    2,142
    Thanks for the info (and same to those below this ^^^ post).
     
  13. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,507
    Did you check the website?
    http://www.terraincomposer.com

    Yes you can see in the readme file in the TerrainComposer folder:
    http://www.terraincomposer.com/terraincomposer2-documentation/

    Can you show a screenshot of the TC2 window with the focus on what you are working on?

    What size did you use?

    If you have any suggestions to improve it. I made the window controls exactly like Unity Scene view window. The GUI is already quite compressed with space, if there were wires it would take a lot more space. But any tips on improving, I designed the code is such way that each aspect is easily changeable and improvable.

    Nathaniel
     
    JBT27 likes this.
  14. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    2,142
    I did some time after my first post there, yeah. It does look totally different from TC1.
     
  15. jonfinlay

    jonfinlay

    Joined:
    Aug 25, 2015
    Posts:
    535
    The trees have never worked for me, even before the patches. See attached for the screenshot
     

    Attached Files:

  16. sieg89

    sieg89

    Joined:
    Mar 4, 2016
    Posts:
    2
    Hi !

    Basic question probably, sorry in advance, I'm just an intern who try to learn TC2 and heightmap^^

    I have to make a big island (around 10x10km) with a lot of mountain. I've fooled for some time with the example stamp, they're very good. But when I tried to use some custom heightmap I made in photoshop (or picked from the web), as soon as I up a bit the heightmap resolution, they become very edgy, with a lot of "stair" (i don't really know how do you call that effect in english). I've looked for a lot of tutoriel but I don't understand where is the problem.

    How I export the heightmap from photoshop 6: Grayscale mode, 16 bit, 1025 or 4097 pixel for format. I export as Raw, I check Mac header 0. I use windows 8.1 but If I check IBM PC when I'm exporting, the raw is a mess in TC2, it become like noise.
    Import in TC : I put the raw file in a RawFiles files and I wait for TC to make the jpg.

    Thanks a lot in advance !

    Ho, and a subsidiary question : Can we "merge" layer ?
     
  17. Jarek-Defiler

    Jarek-Defiler

    Joined:
    Feb 6, 2015
    Posts:
    64
    8x8 terrain tiles. 4096x10000x4096 size.
     
  18. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,507
    Did you generate a heightmap first with TC2? This is needed in the current version...In the comming beta 7 it can be done with an existing terrain.

    I have it explained here:
    http://www.terraincomposer.com/terraincomposer2-documentation/#stamps

    Yes you can do many merge operations between layers, like add/subtract/lerp/multiply/divide/difference/min and max.

    Oki I will take a look. But that would be a 32k heightmap and that is too much for Unity to handle (or they must have improved something). Don't you get very low FPS? Normal heightmap is like 4k, 8k-16k could work.

    Nathaniel
     
    sieg89 likes this.
  19. jonfinlay

    jonfinlay

    Joined:
    Aug 25, 2015
    Posts:
    535
    I generated a perlin noise heightmap, which works perfectly (see attached). The splatmaps work perfectly as well (I have four mixed together), and the grass too seems to work. Only the trees are having the problem. Was there a problem with using noise to generate the heightmap?
     

    Attached Files:

  20. sieg89

    sieg89

    Joined:
    Mar 4, 2016
    Posts:
    2
    Thanks a lot ! The only missing part was the "channel count = 1" when importing -_-

    And for the layer I think you've misunderstood. I'm speaking of definitly crushing them, like "merge all the layers" in photoshop.
     
  21. camel82106

    camel82106

    Joined:
    Jul 2, 2013
    Posts:
    302
    What is your tree resolution per meter on tree output node. And how many terrains are you using? Just for fast try you can lower value there if it wouldn't help.
     
    jonfinlay likes this.
  22. zelgo

    zelgo

    Joined:
    Jun 26, 2016
    Posts:
    39
    can't do it, but it would be nice
     
  23. jonfinlay

    jonfinlay

    Joined:
    Aug 25, 2015
    Posts:
    535
    Thanks Camel, the tree resolution was set to 32, I reduced it to 8 and now it appears to work.
     
    Last edited: Jul 28, 2016
  24. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    2,142
    I got TC2. I apologize if this is listed somewhere, but I haven't seen it. I looked at the little bit of documentation thus far, even went to Wikipedia's page on Perlin noise.

    I'm trying to create interesting terrain with only procedural generation. The noise options are lacunarity, persistence, octave, and seed, but I am unable to find a specific description of what these do. I think I need that to be able to use them effectively. Can you, eagle555, or someone else point me to where I might find something on what specifically these do?

    Edit: Additionally, I'm getting gaps in between my terrains. I've encountered this before, but I don't recall the fix...

    Edit2: Additionally, is there a reason I can't save changes to the Terrain Area inspector dialog? Such as changing the scale of a splat texture or removing a grass texture.
     
    Last edited: Jul 28, 2016
    jonfinlay likes this.
  25. whitav8r

    whitav8r

    Joined:
    Jul 26, 2016
    Posts:
    3
    I am a Unity newbie and I am trying to generate just the Mt Rainier example - it looks fine as a scene after Terrain Creation (using same resolutions as the World Composer video tutorial from Nathaniel) and then do a build and run - and the build function is taking forever (> 30min) I setup the GICache directory to a separate disk so I can have 30gb or more available, Is there a simple lighting setup or other simple settings that will make the build faster.
     
  26. jonfinlay

    jonfinlay

    Joined:
    Aug 25, 2015
    Posts:
    535
    I'm doing pretty much the same as you, I love the noise options and would prefer to use only them. By experimenting, I found Lacunarity increases the number of larger bumps or hills in perlin noise, persistence adds a lot of small rougher bumps, and ocatave just further adds to that. I'm creating a little rally game in the sahel, and I used a Perlin mask of 1% opacity, with Lacunairty and Ocatave set to 12, and persistence at 0.2. This has created a moderately flat but bumpy terrain which the car drives over nicely. If you have Photoshop, you can preview the different noise options. Billow adds ridges (like trenches). Noise options are what first attracted me to TC, and looking forward to the new 3D ones coming in the next update. The gaps between the terrain appeared for me when the Pixel Error was set to 5, decreasing it to 1 fixed this, but I couldn't save these changes for some reason, I think this is the same problem you had with saving the Terrain Area inspecter.
     
    JBT27 and EternalAmbiguity like this.
  27. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,507
    A nice thing about TC2 is that it updates in realtime, so tweaking any noise value you can see directly what it does on the terrain and on the preview image.

    This link provides good explanation:
    http://libnoise.sourceforge.net/glossary/

    In Beta 7, I imported this entire free noise library:
    https://www.assetstore.unity3d.com/en/#!/content/3957

    Which has noises that are made by Gilliam:
    http://www.decarpentier.nl/scape-procedural-extensions

    Each noise has 3 different variations and there's many more variations possible in general. With the Jordan and Swiss noises from you can create a very natural erosion looking landscape.

    There can always be gaps in the Editor, but shouldn't be at runtime, can you check if it is in runtime as well and if show a screenshot?

    Some people reported this issue also, here it works fine. I will take a look at this asap...

    Nathaniel
     
  28. Jarek-Defiler

    Jarek-Defiler

    Joined:
    Feb 6, 2015
    Posts:
    64
    I haven't had any problems with fps so far. Runs smoothly on my end.

    Also, I don't know if this is a Unity problem or a TC problem. But I imported some trees and applied the materials on them and placed them in TC. But I am getting this error:

    XXXX couldn't be instanced because the prefab contains no valid mesh renderer.​

    So none of the trees are working with TC. However, I have applied mesh renderers to all of them yet I'm still getting the error. :confused:
     
    Last edited: Jul 28, 2016
  29. jonfinlay

    jonfinlay

    Joined:
    Aug 25, 2015
    Posts:
    535
    Not sure if anyone else has had this problem, but when I place objects, they are placed over each terrain sequentially, but are removed from the prior terrain. Then, they finalise only on the final terrain. The same happens when the game is run. Does anyone know the reason for this? Thanks

    Edit: I just created a brand new terrain, and the same thing is happening, all the objects get spawned only on final terrain.

    And I'm getting this error message:

    ArgumentOutOfRangeException: Argument is out of range.
    Parameter name: index
    System.Collections.Generic.List`1[TerrainComposer2.TC_SelectItem].get_Item (Int32 index) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/List.cs:633)
    TerrainComposer2.TC_Generate.ComputeObject () (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:859)
    TerrainComposer2.TC_Generate.Compute (Int32 outputId) (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:139)
    TerrainComposer2.TC_Generate.GenerateOutput (TerrainComposer2.TCUnityTerrain tcTerrain, Int32 outputId, Boolean instantGenerate) (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:257)
    TerrainComposer2.TC_Generate.Generate (TerrainComposer2.TCUnityTerrain tcTerrain, Boolean instantGenerate, Boolean disableTerrain) (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:233)
    TerrainComposer2.TC_Generate.Generate (Boolean instantGenerate) (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:215)
    TerrainComposer2.TC_Generate.MyUpdate () (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:99)
    UnityEditor.EditorApplication.Internal_CallUpdateFunctions () (at C:/buildslave/unity/build/artifacts/generated/common/editor/EditorApplicationBindings.gen.cs:217)
     

    Attached Files:

    Last edited: Jul 28, 2016
  30. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    2,142
    Great, I'll take a look at those.

    If by runtime you mean still within Unity, just while the game is "playing," then yes, I definitely still had the gaps. I'll take a screenshot when I get the chance.

    And yeah, I got an error pop-up because TC2 automatically assigned 9 grass textures (while it only supports 8), but when I tried to delete one it wouldn't save, so I can't add any grass for the time being. Additionally, I can't change (or save the change) the scale of my splat textures which are too large.
     
  31. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,598
    Hello Nath, I asked a question a week or so ago and on Skype but yet to get an answer, we been on hold for awhile for our Android game due to having issues with TC2 not working in Android, I reported already to you the issues. So I was looking for an ETA on a fix for it?? So we can make up our mind and decide to use another tool which I hate to do, but we are a company and on a deadline, we already missed 4 deadlines, so we have done all our other work around the terrain, but we are at the point where we can't wait much longer..

    So let me know so I can make a better decision on leaving TC2 for now until there is a fix for Android. Thanks

    PS: I hate to do this to you I been a strong TC 1 user for many years , but at this point we have no choice due to the game we are making. ! I hope you understand.!

    if you are uncertain, then by all means let us know and I will remove TC2 for now and come back to it in 6 months and check back. But we would like if we could get a better ETA, or response..

    Again, I love where TC2 is going, and will always support it, this is just business . Need to feed the family:)
     
  32. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,507
    Yes I was still working on getting our new house ready. Today my new office will be ready. It went a bit slower because it had other tasks too, our gaming team got stock and needed me to fix/add somethings before they could continue.

    Tomorrow I will be back full-time on TC2 to do a patch for beta 6 and finish beta 7, and then work on DX9 solution for Mac. I wanted to check TC2 on android today, but we were talking on skype and you already found the solution, which is great news :D

    The solution to make TerrainComposer2 work on Android platform (in the Unity Editor) is to disable Graphics Emulation in Unity Menu -> Edit -> Graphics Emulation -> No Emulation.

    Nathaniel
     
    silentneedle likes this.
  33. JBT27

    JBT27

    Joined:
    Jul 13, 2016
    Posts:
    196
    Further to my comments about the UI - it's actually fine, and thanks for responding on that. TC2 projects can get dense, and this layered nodal solution is actually likely the best way to handle it. It's not like nodal surface editors or compositing, where there is a need to have wires feeding from one node to several.
     
    recon0303 likes this.
  34. jonfinlay

    jonfinlay

    Joined:
    Aug 25, 2015
    Posts:
    535
    Further to my comment five posts above, I have attached two videos which shows the problem.

    Problem 1. Objects are only placed on the last terrain (after rotating through all the terrains). See video below:


    Problem 2: Changes made to the runtime settings are not saved. See video below. I believe the problems with the gaps in the mesh are caused by pixel error set to 5, reducing to 1 reduces these gaps. Ideally, I would like the editor to show the pixel error at 5, and at runtime set to 1.


    One further question, the TC_Node script for noise uses a default size of 2048x2048x2048. Should this value be changed to match my terrain? If so, should it be set for each individual terrain (in my case 512x512x512) or the full size of all the terrains combined (in my case 512x12800).

    Thanks
     
    Last edited: Jul 29, 2016
  35. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,598
    Yup, I posted that on the Skype found that last night. Ya it was keep defaulting back to Graphic emulation .. So needed to disable it under player settings as well. It works great now.. I found the issue and posted it to Doc and others on Skype so glad it was a silly setting.. Thanks Nath for the reply!! Hope you like the new house, Nath and the game is going well!.. Can't wait to see your new game.


    FYI if anyone uses Android, and you add a noise node or Stamp, be sure to go to the inspector and adjust, it won't look the same as Desktop, but its not that big of a deal to adjust.! It worked great after I had to tweak some settings in the inspector. The noise Node will be really noisey, more than normal..The Stamps may look stretched and flat, some may look like they are NOT there, just pull them up a bit. Again NOT a a big deal.. Figured to post this in case someone runs into this . Once you do this, it looks and works just as good as the Desktop. So its not really a big deal to me. /Cheers.
     
    Last edited: Jul 29, 2016
    JBT27 and docsavage like this.
  36. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    995
    Hi jon,

    I'm probably miles off but have you tried using the clear button and then making sure the 'appy to all terrains' is selected when you respawn. Apologies if this is miles off.
     
    jonfinlay likes this.
  37. jonfinlay

    jonfinlay

    Joined:
    Aug 25, 2015
    Posts:
    535
    Any help is appreciated! But I've just scanned this documentation and couldn't find any references to a clear button. Whereabouts is it? Thanks again.
     
  38. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    995
    Sorrty jon my mistake. Reset button the one on the main TC2 settings in the inspector. Yopu can see it in your second video. Sorry though - aother late late late night last night
     
    jonfinlay likes this.
  39. jonfinlay

    jonfinlay

    Joined:
    Aug 25, 2015
    Posts:
    535
    I thought you meant that so I tested it anyway, I reset the objects, then refreshed, but the problem persists :( I've just downloaded his getting started video, which I'll playback at a speed of 0.8 in case I missed anything the first time round. But I'm sure he didn't mention anything about this.
     
  40. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    995
    Sorry jon, worth a try I suppose.
     
    jonfinlay likes this.
  41. jonfinlay

    jonfinlay

    Joined:
    Aug 25, 2015
    Posts:
    535
    Definitely, thanks a lot for trying :)
     
    docsavage likes this.
  42. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,507
    Did you imported the latest patch? The issue with objects resetting on multi terrain should be fixed.
    http://www.terraincomposer.com/terraincomposer2-release-notes/

    Thanks for telling. I will take a look at TerrainArea issues today and make a patch for the runtime not saving and other issues people reported with this.

    No it doesn't matter. This value on noises has effect on clamp. If 'Clamp' is node inspector is enabled it will only generate the node within a rectangle based on the size that is set in the node inspector. For noises this can be used as an optimization for applying local noise somewhere. Because if these node bounds are outside of a terrain, TC2 will skip to generate it, basically culling nodes. This optimization is not yet enabled though as I'm still working on it, I will look into getting this working for Beta 7.

    Nathaniel
     
  43. jonfinlay

    jonfinlay

    Joined:
    Aug 25, 2015
    Posts:
    535
    Thanks for responding. Yes, I definitely imported the latest patch, I unpacked it from inside my project folder (twice, just to make sure). The second time it said everything had been imported so assume it was patched. Unless there was another step I had to take?
     
  44. Arkade

    Arkade

    Joined:
    Oct 11, 2012
    Posts:
    570
    Hi
    Am experimenting with TC2 & RTPv3. I've tried RTPv3 with straight terrain & Gaia. I'm evaluating TC vs. Gaia vs. MapMagic atm. I find TC's procedure visualization (with its little images of where what's applied) most clear so far. It also seems easiest to change textures... caveat the following problem!

    I'm now getting this error (after doing steps below):
    IndexOutOfRangeException: Array index is out of range.
    TerrainComposer2.TC_Generate.ComputeSplat () (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:599)
    TerrainComposer2.TC_Generate.Compute (Int32 outputId) (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:135)
    TerrainComposer2.TC_Generate.RunGenerateStack () (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:126)
    TerrainComposer2.TC_Generate.MyUpdate () (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:108)
    UnityEditor.EditorApplication.Internal_CallUpdateFunctions () (at C:/buildslave/unity/build/artifacts/generated/common/editor/EditorApplicationBindings.gen.cs:217)

    Steps (roughly)
    1. Created new scene with Terrain Composer window open
    2. Left default 8 splats
    3. Created terrain
    4. (sorted out heights, splats, trees. N.b. I was only actually using 4 splats as yet.)
    5. Enabled RTP
    6. Had difficulty with 8 splats so decided to remove 4 unused splats.
    7. Started seeing error.
    8. Reconfigured TC & RTP with my desired splat textures
    9. Can't get rid of the error.
    I'd hazard TC has some stored info about how many textures it thinks I have and it's not letting go of that -- hence the out of range when iterating rtSplatmaps.Length which came from area2D.currentTerrainArea.rtSplatmaps? I've tried removing all splats from my generator (textures and the yellow or blue nodes -- er selector & mask?). No help. If I disable splat generation I'm OK.

    EDIT: Just tried removing RTP in case it was messing. No use either.

    erm, help? Thanks
     
  45. Arkade

    Arkade

    Joined:
    Oct 11, 2012
    Posts:
    570
    Update -- it's *really* easy to reproduce the error ... but maybe I'm 'doing it wrong' ?
    1. New Unity project
    2. Import TC
    3. Open TC window
    4. Select Terrain Area
    5. Remove 4 splat textures (I *really* only want 4 atm)
    6. Back to TC window
    7. Enable splat
    8. Add a generator layer for splat
    9. Add 1 material
    10. ERROR
    I'm guessing either TC expects users to want 8+ splats or I'm reconfiguring the splats incorrectly. I'm hitting the '-' button at the bottom 4 times (removing successive splat textures). I also tried removing all of them. I did investigate whether I could access the settings before I opened the TC window but it threw some NREs complaining things weren't running.

    Hope this is something easily fixable.
    Thanks, Rupert.
     
  46. Arkade

    Arkade

    Joined:
    Oct 11, 2012
    Posts:
    570
    Doh! Just saw there's a patch 7 with a fix for this! Great! (assume resolved unless I'm back to edit shortly ;-) )
     
  47. Arkade

    Arkade

    Joined:
    Oct 11, 2012
    Posts:
    570
    3 things:

    1. Patch 7 fixed the 4 texture thing = great!

    2. Now trying to add grass. Vanially scene with patch 7, TC defaults to having 9 grasses and complains it can only do 8. Removed one (and switched a couple of the textures by hand), added all to a single group and set perlin distribution only to get following error:
    NullReferenceException: Object reference not set to an instance of an object
    TerrainComposer2.TC_Generate.ComputeGrass () (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:681)
    TerrainComposer2.TC_Generate.Compute (Int32 outputId) (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:138)
    TerrainComposer2.TC_Generate.RunGenerateStack () (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:126)
    TerrainComposer2.TC_Generate.MyUpdate () (at Assets/TerrainComposer2/Scripts/Generate/TC_Generate.cs:108)
    UnityEditor.EditorApplication.Internal_CallUpdateFunctions () (at C:/buildslave/unity/build/artifacts/generated/common/editor/EditorApplicationBindings.gen.cs:217)

    3. Is there a special way one is supposed to install RTP for TC v2 when using more than a single Terrain? (Please forgive & redirect me if I've missed something obvious!) I'm tiling 3x3 atm and am using RTP's POM facility which requires heightmaps for each Terrain. I vaguely feel I saw mention of TC v2 p7 being able to export heightmaps ready for RTP??? I noticed as I was searching for something else but now, cannot find it!

    Thanks in advance!

    EDIT: p.s. Re. (3), I'm aware of RTP's window which converts a .terrain to the required image. I believe that requires redoing any time the terrains' heights change -- a bit of a drag with the gloriously dynamic TC v2 ... and utterly unhelpful if wishing to use TC for runtime procedural generation!
     
  48. Arkade

    Arkade

    Joined:
    Oct 11, 2012
    Posts:
    570
    Another oddity (bug?), I increased the Terrain "Thickness" in the "Terrain Area"'s Settings and suddenly have disrupted seams between my terrains! (see pic) While I /do/ have RTP enabled on x0_y0, these appear on other squares that don't have it enabled yet.

    Btw, sorry if I'm being too reactionary with my feedback -- I usually err the other direction so may be overcompensating to reduce time wasted on something still in beta where feedback might be appreciated sooner. Hope you undertsand.
     

    Attached Files:

  49. Arkade

    Arkade

    Joined:
    Oct 11, 2012
    Posts:
    570
    OK, so I think I've found the cause but not the solution to my gaps.
    When I changed the Thickness, TC duplicated the custom material that RTP had set on x0_y0 onto all the other terrains, including the heightmap... which, of course, means it doesn't line up any more!

    So, I guess the answer comes down to TCv2-RTPv3 integration. It's a bit of a pain since I'd just manually gone through creating separate RTP Components on each of the 9 Terrains, generating their heightmaps, colourmaps, etc and changing the Thickness whacked them all again!

    Enough for tonight! Looking forward to any and all advice :) Goodnight.
     
  50. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,507
    WorldComposer uses Microsoft Bing maps:
    http://www.bing.com/maps/

    Yes you can provide your own imagery. In beta 7 I made a custom terrain shader that has global colormap, also will be possible in beta 7 to make a colormap and the image node will work, this node you can use to read from an image and for example use it to make a colormap.

    For bump-mapped area's Unity has build in splat normal textures, but for great detail I recommend to use RTPv3 as it has POM shading which make the splat textures look instead of flat look 3d, can see it in the showcase video here:


    Yes performance on Oculus Rift can be good, only cannot use too much trees and SpeedTree at the moment is not really optimized, old Unity terrain trees are much faster. Yes UnityFS example aircraft has a 3d cockpit.

    Ah yes a too low tree resolution won't work, it also depends on the terrain size. I will try to get this to work or automatically put the limit of the minimum resolution were it still works.

    This indeed has to do with Unity (Enlighten) baking the lighting, it probably waits for this to finish before continue to make the build. On default the lightmap baking is set to automatic and with each change Unity will automatically rebake the lighting for a Scene. Not sure why Unity chose to make this automatic as there's a huge amount of complaints that Unity 5 Enlighten lightmap baking is incredible slow compared to Beast in Unity 4. So you can disable this in Unity Menu -> Windows -> Lighting -> Disable 'Auto' toggle. If you want to bake the lighting for a very large terrain, for less waiting time you need to lower the baking resolution, another option is to exclude the terrains from the baking.

    It is saved automatically when you make a valid change. If you select the 'Splat' tab in TerrainArea GameObject it will automatically load the settings from the terrain, I made this so I could get rid of the 'Get' and 'Set' buttons that were in TC1 to make it more user friendly. Later I'm planning to have to have the assigning based on the textures on the node (so assinging happens automatically by dragging splat/tree/grass to a node). So assigning to terrain is not needed anymore.

    The key is not to deselect the TerrainArea GameObject from the inspector. You can lock the inspector with the little lock icon in the right top of Inpector window. Then it should work fine.

    This must have to do that the tree prefab is not setup correctly to work as a Unity terrain tree. Probably the mesh renderer is in a child of the Prefab, but the mesh renderer should be on the main prefab. Which tree package did you use?

    Ah yes merge layers. Visually you already can do this by grouping all layers in a layer group and collapse it. Yes I can make something like this, but it would mean that I need to export the result to a file. And it won't be able to do any edit on the layers anymore. Then it works like a stamp that has a limited size (clamped), so if you were using endless noise this won't be endless anymore. As in photoshop you always work on an image that has a specific resolution, so merging is no problem, but in TC2 the resolution is basically endless since it generates in world space.

    Nathaniel