Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

Terrain Composer2 a next generation GPU powered terrain tool.

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

  1. Charles-Van-Norman

    Charles-Van-Norman

    Joined:
    Aug 10, 2010
    Posts:
    86
    I'm sure you get this question all the time but I could not find a satisfactory answer. How can I keep multiple *different* terrains (not stitched together or part of a grid) in the same scene? I need 9 terrains in one scene with different splat maps and height maps each, but no matter what I do it seems that changing one changes all of them.

    thanks,
     
  2. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,704
    That is possible. You just shouldn't shift click the <Set All> button, but <Set> button instead. Also you can disable each terrain to exclude from generation. In TC terrain list after each terrain label there's a toggle to enable/disable it.

    Nathaniel
     
    Last edited: Feb 26, 2016
  3. malkere

    malkere

    Joined:
    Dec 6, 2013
    Posts:
    1,209
    I've had a semi-reoccurring problem I have sort of fixed, I'll post in case anyone else runs into it. I use a lot of instances of TC in different scenes and sometimes one will get "bugged" where moving between the TC window and any other window (inspector, scene, etc) Unity will hang for 5-10 seconds.

    fix: Save the current TC settings in the TC menu (do this daily anyway). Then I drag the TerrainComposer_save gameobject into the "Project" (folder window) it will make a prefab out of it. This causes the TC window to sort of check yoself, and suddenly it thinks it's using an older save than I'm actually using. Reloading the current save from the load menu then fixes the problem. I can then delete the temporary prefab I created.

    REALLY annoying problem when trying to add new objects from the folder tree, lol. Every time you switch it hangs. Very glad I've got it working now. I've run into this in the past but it seemed to go away/come back/go away. I make prefabs a lot so I guess I was fixing it without knowing it.
     
  4. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,704
    If you onfocus the TerrainComposer window it automatically forces the latest state of the TerrainComposer save and global settings. Also TC automatically saves the project every 5 minutes on default. It's in TC Menu -> Options -> Generate Settings -> Auto save global settings. If Unity crashes you loose all prefab changes and even new prefabs you made if not saved with Unity Menu -> File -> Save project. So this feature in TC prevents loss on a crash, but you can put the minutes higher.

    If you the project is very big it could get slow like you experience. You can try comment the 2 SetDirty lines in the function OnLostFocus (search for this) in the TerrainComposer script. It used to be an issue with older Unity versions, but it might be that Unity fixed it by now. What would happen is that you would make some changes in TC window then go to play mode and back, and suddenly it would revert the changes to an older state...

    Nathaniel
     
  5. malkere

    malkere

    Joined:
    Dec 6, 2013
    Posts:
    1,209
    It's a weird bug. It doesn't crash Unity, it just makes it hang for 5-10 seconds. One of my chips goes too 100% like stuck in a loop, then comes out of it. This is when the TC windows loses focus, and only sometimes. Once I do the fix I wrote-up it goes back to absolutely no pause after losing focus. I do use big scenes with lots of stuff, but 99% of the time that's no problem. I don't know what starts the bug, but it's really annoying, so I'm glad I found a way to stop it.

    I might try commenting out those lines like you suggested, but I don't understand why it would work 99% of the time and then all the sudden not in some cases.... doesn't really seem like a TC problem, though I guess that's the only way to say it. All's well that ends well though. No complaints here.
     
  6. Tom_Timothy

    Tom_Timothy

    Joined:
    Nov 21, 2013
    Posts:
    132
    I'm having a issue using a 3d mesh grass I click the mesh button drag the prefab in and it doesn't place the prefab after the timer but will place the billboard grass just fine. using the same prefab in objects works fine what am I missing?
     
  7. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,704
    It works fine here:

    DetailMesh.jpg

    Can you show a screenshot what happens on your side?

    Nathaniel
     
  8. Tom_Timothy

    Tom_Timothy

    Joined:
    Nov 21, 2013
    Posts:
    132
    So first pick is a obj load ed up and ran the generation button.
    no 3d object.png

    Second image changed the obj to a billboard grass and clicked set button to see generation worked just can't see objects. no other setting was changed and didn't even half to generate again. changed to grass.png
     
  9. ForceVFX

    ForceVFX

    Joined:
    Jan 21, 2011
    Posts:
    612
    Change object resolution to a higher setting, like 256 or 512.....make sure local area is set to max.
     
  10. Tom_Timothy

    Tom_Timothy

    Joined:
    Nov 21, 2013
    Posts:
    132
    object resolution is set to 1024, and as I said before placing them as objects works just fine placing them as a mesh grass does not. you mention set local area to max not sure what you mean by this.
     
  11. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,704
    In my screenshot you can see an image of the object in the grass layer. In your I don't see it, then probably you have a nested prefab or your prefab doesn't contain a mesh...

    Nathaniel
     
  12. Tom_Timothy

    Tom_Timothy

    Joined:
    Nov 21, 2013
    Posts:
    132
    okay so nested prefab seems to be the problem with them not showing one more thing is happening now. All the objects seem to be in rows for some reason. I am also using Advanced foliage shader in case that matters. and yes the ground there is all one texture and i'm applying the grass by texture.
    rows.png
     
  13. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,704
    If you reduce the strength it should get better. Unity does that if the density gets too high...

    Nathaniel
     
  14. Tom_Timothy

    Tom_Timothy

    Joined:
    Nov 21, 2013
    Posts:
    132
    Last question for the week I need the grass to only go so high on the terrain. how can i use the height setting so it stop at a decided height? hieght.png
     
  15. malkere

    malkere

    Joined:
    Dec 6, 2013
    Posts:
    1,209
    the curves input is the X and output is the Y. So if you make the following x,y points: 0,1 + 0.5,1 + 0.5,0 + 1,0 you will have full output up until 0.5 of your height, then drop to zero output after that. if you have 1000m height that's up to 500m. or you can make it as complex as you like.
     
  16. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,704
    Yes it like Malkere says. The y in curve is the normalized terrain height, so 0 = 0 and 1 = your terrain height. You can change the height of the terrain in TC terrain list -> Size -> Y, shift click <Set All> after changing.

    Nathaniel
     
  17. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,015
    Hi @eagle555 TC2 does look very interesting but was wondering if you will be supporting 1 at least for the forseable future.

    Congratulations by the way.
     
    Last edited: Feb 29, 2016
  18. malkere

    malkere

    Joined:
    Dec 6, 2013
    Posts:
    1,209
    Looks good Nathaniel!
    Very interested in hearing/seeing more!
     
  19. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,704
    TC1 help no problem, but I won't update any tutorial video's or documentation on it anymore. If you have financial issues it's no prob you can get TC2 for free anytime. Yes I know that I've been announcing TC2 since a long time. I had several TC2 prototypes that I wasn't really happy about. In the time Unity's Hierarchy system didn't allow arranging the GameObjects by index, so it wasn't possible to use it. It was leading to a lot of restrictions and a lot of code (like in the current TC) and another issue that Unity's serialization can't go deeper then 7 levels. For the current TC the 7 level restriction was a real pain, I had to split the list classes up in 2, so reference them by an integer index, but what if you delete one element in the list? All the indexes in the items above have the wrong number. Then Unity script doesn't allow the use of generics, so that leaded to a lot of code. I made the wrong choose by making TC in Unity script, but back then it was the most documented...

    The current TC is a product that I made 3 years ago when I was still learning Unity, and for that time I think I did a good job, and while I did many update Unity script was really limiting me.
    3.5 years ago I was making a flight simulator game from the 'Airwolf' tv series from the 80's (I really like the heli), I was modelling the Airwolf bell 222b heli with Blender:

    But I wasn't happy about brushing the Unity terrain, that lead me into developing TC as I wanted great results and wanted to share it with the Unity community:

    This I made with TC when I released it...(Also I made good progress on modelling airwolf)

    However TC doesn't represent my current programming skills (of course I've been updating it a lot, but by design it already had limitations). I've been working on a few triple A games the last 3 years with a team, at the moment we are working on a big title. So I gained quite some experience and I used this for developing TC2.

    I really wanted TC2 to be very special: powerful/clean/flexible/limitless and especially easy to use. I think I really nailed it this time. Of course I want you all to test and feedback and suggestions to improve it even more :)

    Nathaniel
     
    malkere likes this.
  20. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,015
    Hi @eagle555, Really appreciate this. Just took a hit recently so have been limited to buying assets that are definitely included my current game. Hopefully will be back to normal soon.

    Really like how TC grew out of a project of your own and one related to Airwolf! Fond memories of being a kid sitting down on saturday mornings waiting for that theme tune to start and the airwolf jet boosters to kick in in the credits. Shame you can't have that airwolf model included with world composer. That would be a great advert! I have worldcomposer as well does. Does WC still plug straight in to TC2?
     
  21. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,704
    Yes I have such memories too :). I might use my Airwolf model to advert for TC2, I really like the airwolf start sequence, could do something similar.

    Yes TC2 is compatible with WorldComposer. I also have a C# version of WC, which I will release after I release TC2.

    Nathaniel
     
  22. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,015
    Great news about WC.

    Airwolf, nightrider, streethawk, ateam, magnum etc. I think the 80's had some great shows and the theme tunes are as memorable as the programmes. You want to watch for copyright with the airwolf model though.
     
  23. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,704
    Yes but I don't think it has still copyright, it only last for like 20 years, and the TV show is already 30 years ago...time flies...

    Nathaniel
     
  24. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,015
    30 years! I must have been minus 15 when I saw it:D

    I recently read that a remake/reboot may be in the works so that may mean someone has bought the rights.
     
  25. TheXWolf

    TheXWolf

    Joined:
    Dec 13, 2013
    Posts:
    85
    There are reruns all the time all over the place, it's crazy to think it's been 30 years give or take a few since those shows.
     
    docsavage likes this.
  26. malkere

    malkere

    Joined:
    Dec 6, 2013
    Posts:
    1,209
    seeing The Happy Days opening during "The Martian" movie I went and saw at theaters was weird. That many years ago feels so disconnected but it all really happened XD I'm not sure if a show like that would be an instant hit nowadays or an immediate cancellation.
     
  27. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,015
    Happy Days - still can hear the theme tune. Could use TC2 to create the towns where all these shows where based and have a big 80's mashup adventure game. Pick from all the characters and travel around. The a - team van pulling up at the cunninghams house helping them break fonzy out of some trouble he got into while working as a PI with magnum:)!!!
     
  28. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,015
    @eagle555,

    Just wondering who's trees and grasses you use in the video on the terrain composer asset store page?
     
  29. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,704
    Hello Everyone,

    I have news about TerrainComposer 2 :). I'm working hard on getting a beta version ready for testing, I think it will take me 1 - 2 weeks. I'm planning on asking a small upgrade fee of $15 in the first week of release (after it will go up), because TC2 is actually a complete new product, I made it from scratch in my favorite language C#.

    I'm making a beta email list at the moment with people interested. All you need to do is send me a mail to Nathaniel_Doldersum@hotmail.com with your TC invoice number. As soon as I have the beta ready I will send everyone in the list the download link.

    TerrainComposer 2 is on another level on every level :). In the screenshots below (not final) you can see the new node based GUI with an image preview of what each node does. Also I'm making the GUI as clean as possible. I'm confident that TC2 will clear the name of TC (that TC for some people is complex and has a learning curve). With TC2 new hierarchy system and its visual presentation, it's not difficult to figure out what is actually happening, then with a little more help of good tutorial video's and manual...

    TC2 is a breeze...Each node is an actual GameObject in the Hierarchy and it reacts to positioning/rotation/scaling of its transform. So each node behaves like people are used to in Unity and it reacts to all Unity's build in functionality like the duplicate command, transform gizmos, undo and everything is drag and drop able (duplicate-able) within the TC2 node window and Unity's Hierarchy. Basically TC2's node window is a graphical representation of Unity's Hierarchy window. This means that on every level you can drag and drop into the Unity project and make a prefab (to save), and drag and drop it back anywhere you want. On every level there's transforming like we are used to in Unity Hierarchy with parenting, and every level can be masked and also there's no limit on levels. On every node you can attach any of your own custom scripts...

    Also I have a big surprise feature, which I think is very cool...I have so much more to tell and to show :)...soon I will reveal more...

    Nathaniel

    TerrainComposer2.jpg

    TC2Splatmap.jpg
     
    Last edited: Mar 18, 2016
    Seneral, magique, MS80 and 1 other person like this.
  30. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,704
    The trees we used in the 24 hour demo :
    https://www.assetstore.unity3d.com/en/#!/content/2817

    The grasses are mostly from nature pack from Michael O.
    Peter made the purple grass texture...

    Nathaniel
     
  31. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,015

    Thanks.

    The trees look very nice and are added to wishlist.
     
  32. tapticc

    tapticc

    Joined:
    Jan 16, 2014
    Posts:
    379
    Hi, I am using World Streamer to stream terrains as the character moves around the world. Currently each of the 25 terrains is split into 1000x1000 chunks, using the 256 resolution level.

    What is the suggested method of creating terrains of different sizes other than 1000x1000 such as 500x500? If I was to make another set of 25 terrains, and lay them next to the existing batch of 25, is there a way to stitch the heights of the neighbouring 5 tiles in each 5x5 set? :)

    EDIT: found the Slice tool to split the terrains into 500x500 chunks, so just the query about stitching new terrains to existing ones left please
     
    Last edited: Mar 4, 2016
  33. tequyla

    tequyla

    Joined:
    Jul 22, 2012
    Posts:
    335
    hum... what is it ?


    soon is over :p

    ++
     
  34. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,015
    Agreed. Really looking forward to trying TC2 and WC2.
     
  35. tequyla

    tequyla

    Joined:
    Jul 22, 2012
    Posts:
    335
    i hope WC2 and TC2 is one now !!
     
  36. tapticc

    tapticc

    Joined:
    Jan 16, 2014
    Posts:
    379
    I used my WC map allowance in about 4 hours, barely even made progress! Obviously not WC at fault, I didn't appreciate how fast I would use the free requests. Thankfully TC lets you create equally lovely flowing terrain!
     
  37. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,704
    I will tell it later :p. You'll find out as soon as you start to test TerrainComposer 2 or once I show TC2 in a video ;).
    I'm still very busy with getting the beta ready, I made a huge step forward today. Here is a little plat texturing test with TC2. Can see 2 layer groups with each 2 layers inside and how the 4 different layers are blended together. With TC2 it will be a breeze to make non uniform terrains with biomes, etc. It takes 2 minutes to create...

    Nathaniel

    SplatTest2.jpg

    TC2_TerrainSplatTest.jpg
     
    Last edited: Mar 4, 2016
    Tinjaw, Seneral, Olander and 3 others like this.
  38. tapticc

    tapticc

    Joined:
    Jan 16, 2014
    Posts:
    379
    Awesome!!
     
  39. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,015
    Very nice. Even for someone as clueless as me regarding these things a quick glance at the flow chart makes me think I have an idea what's going on. Nice
     
  40. Olander

    Olander

    Joined:
    Sep 13, 2014
    Posts:
    401
    @eagle555 Now that is really nice and much easier.
     
  41. ZenMicro

    ZenMicro

    Joined:
    Aug 9, 2015
    Posts:
    206
    Glad to assist with the new release of TC Nathaniel,

    The more visual you can make things and have sliders show a real-time change the better, I know I probably have some Utopian concept in my mind of how a Terrain editor should be but I see anything you can pull off on the GPU and show instant results even if only for a small portion of the map as the way to go.

    What I would love is a set of Paint style tools like Unity already has but then what you are doing is tweaking settings for the entire terrain (or the appropriate level/boundaries) kinda like you find in any 2D editor (Photoshop, Paint etc) that would allow for visually mark/paint what you want as a kind of Smart Tool that say you've generated a level and now want to adjust some texture incline value.. grab the 'Slope Brush' and highlight an existing texture which then in 3D space it'll show you the min/max and perhaps even priority (order of precedence) and with a click and a drag you can increase of lower the angle - visually, let that process populate the variables instead of the other way around (ie. Human to Machine, Not Machine to Human format if that makes sense?), not sure I can describe it all easily, but for fine tuning and for further customizing Points Of Interest etc that would rock.

    I mean I just got another idea, Create a prefab of an arbitrary area using a Magic Wand or by drawing a closed spline around an area (or just a easy box selection tool with 2 clicks from top left corner to bottom right to select an area) and you now have a prefab or sub-scene you can paste again.. that might be an issue with nested-prefabs etc.. I'm not being real technical here just thinking out side the box :D

    I guess these desires come from my days working with Valve's Hammer Editor (Formerly WorldCraft) it was very fast to navigate (unlike say Blender where I need a tutorial to do any simple thing like navigating around the object) and make stuff out of shapes and copy n paste to your hearts desire.. of course that was dealing with boxes (Which Unity can already do although no snap to grid that I know of) and not height map terrains which are a different animal :p
     
    Seneral likes this.
  42. Seneral

    Seneral

    Joined:
    Jun 2, 2014
    Posts:
    1,206
    +1 for (partial) GPU implementation and a Painter Smart Tool ;)
     
  43. malkere

    malkere

    Joined:
    Dec 6, 2013
    Posts:
    1,209
    Being able to copy and paste noise functions is what I'm really looking forward, and more of them! =D
     
  44. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,704
    About GPU implementation...It is definitely Utopian but it's a great idea, funny that we shared that thought...And that reveals my big surprise :D, as TC2 is a 'Next Generation' terrain tool, able to fully generate on the GPU...So instant results which is great for streaming/networking and can even animate terrain formations. As any change to a curve/slider/parameter the result will show instantly with animation speed. Also the TC2 node windows preview textures update instantly...I'm really excited to share it soon.

    As for Paint style tools. Maybe you can explain it in more detail. I think I know what you mean. The thing in TC/TC2 is that any element is not existing in only 1 place . You can have the same texture/item in multiple layers. A system were e.g. you have one texture and apply the rules for only that texture is very limited.

    As for points of interest, TC2 will have the ability to generate on small parts (a rectangle area) of the terrain with a complete new LayerLevel. So not just spawning a big prefab and adjusting the height of the objects. But e.g. spawn a house, generate a garden around, place tables in the house, place chairs around the table. Place plate on the table, place a spoon around the plate. It's actually possible in the current TC, but without visual nodes it's a bit tricky.

    Nathaniel
     
    Tinjaw, hopeful and Seneral like this.
  45. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,704
    That would be possible. For the GPU part it would need to be implemented there. But TC2 also can generate on CPU. So could do it there also. If you have any links to good GPU noises let me know, I can implement them...I have 3d noises perlin, billow, multi-fractal and will add vonoroi too soon.

    Nathaniel
     
  46. docsavage

    docsavage

    Joined:
    Jun 20, 2014
    Posts:
    1,015
    Hi @eagle555, When TC2 is in the wild you really need to do some video demonstrations to show what these features are and do. I think I have an idea but until I see I won't be sure, `fully generate on the GPU `sounds smart though and I get the impression it's a biggie:)

    doc
     
  47. eagle555

    eagle555

    Joined:
    Aug 28, 2011
    Posts:
    2,704
    Yes I will show it soon in action ;).

    Nathaniel
     
    MarcusWatson and docsavage like this.
  48. mensch-mueller

    mensch-mueller

    Joined:
    Nov 25, 2014
    Posts:
    156
    Hi Nathaniel

    Have you thought about implementing erosion?

    Cheers
    Michael
     
    hopeful likes this.
  49. Seneral

    Seneral

    Joined:
    Jun 2, 2014
    Posts:
    1,206
    No way! GPU accelerated! That is truly amazing ;)
    I've used a free asset called turbulence library in the past, it is a huge collection of GPU noises, both 2D and 3D, and it has a great degree of customization. Just a thought though, it is a seperate asset after all. But maybe an integration would be possible? Don't know...
     
  50. ZenMicro

    ZenMicro

    Joined:
    Aug 9, 2015
    Posts:
    206
    Very cool indeed, I mentioned GPU because I heard about WorldCreator (i think it called) and it mentions it's use of Instant result via GPU.. apparently it's already submitted for the Asset Store.

    Also thought of that because I found other terrain assets to lag like hell when using 3D space utilities - And i have a decent PC as well!

    Texturing Adjustment
    As for Terrain Tools/Toolbar I was thinking... After generation of changes that you could click on a point on the terrain and be able to make changes in 3D space, so for example with a texture, you want to adjust something about it's application, so with a tool bar and some standard shortcuts to alter the functionality, things like...

    Move (Move the Start and End angle Up or Down the slope in unison)
    Expand/Shrink (Decrease start angle & Increase end angle)
    Scale (Maybe Mouse Wheel while holding CTRL to scale the tiling)

    Follow-Terrain Move Tool (For Objects)
    You've placed many an object via ColorMaps etc. (i think that's how you do it) but now you want to adjust one objects position or even a group of positions, Normaly with Unity once an object is placed like a prefab, Yes it's placed on top of the terrain, but if you move it again manually it doesn't follow the terrain. So similarly to the texture tool have a mouse and Key combo allow for manipulation. I think there is an asset already that has all kinds of snap and move and rotate tools but would be nice.

    I know previously (so far) you have keys that needed to be used for things which was really confusing, but i mean in this case purely in the context of a selected tool using the CTRL/ALT/SHIFT keys to Gain +/- or Both type functionality, as you find in many 3D apps etc.

    This may be out of scope (hate it when people say that - like nope - look elsewhere - lol) but if you get what i am talking about and are interested i could write up a more fleshed out document of what i think would make for a great way to improve in editor editing. Maybe Unity themselves will read this and consider it... they are overdue for a Terrain tools revamp!