Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

[Official] New Terrain System

Discussion in 'General Graphics' started by bibbinator, Jul 4, 2014.

Thread Status:
Not open for further replies.
  1. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    +1
     
  2. Baldinoboy

    Baldinoboy

    Joined:
    Apr 14, 2012
    Posts:
    1,526
    Totally agree. There are great shaders but you are still so limited with what you can do. Can not even produce a terrain close to the quality and performance of one in a game almost 10 years ago! Definitely the weakest part of Unity and for me it is the most important.
     
    PeterB, antislash and magique like this.
  3. Reanimate_L

    Reanimate_L

    Joined:
    Oct 10, 2009
    Posts:
    2,788
    Just to motivate unity terrain team,
    note : notice how the terrain and mesh automatically blended, that's so cool
     
  4. antislash

    antislash

    Joined:
    Apr 23, 2015
    Posts:
    646
    don't dream too far :D we're talking about dice....
    i'd be happy with the same even without geom blending.
    c'mon terrain team, give us some sneak peek
    i' am personnally waiting badly for that...

    maybe we should flood the thread with requests :D
     
    Baldinoboy likes this.
  5. one_one

    one_one

    Joined:
    May 20, 2013
    Posts:
    621
    *sigh* A man can dream, though... Geometry blend makes such a huge difference though, especially for cliffs as shown in the desert video. But I'm definitely curious to see where things are at right now, too.
     
  6. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    Geom blending is common in games now so I don't think this is dreaming at all. It's essential.
     
    PeterB and one_one like this.
  7. Reanimate_L

    Reanimate_L

    Joined:
    Oct 10, 2009
    Posts:
    2,788
    No, i want to dream that far maybe even more :p
     
  8. antislash

    antislash

    Joined:
    Apr 23, 2015
    Posts:
    646
    and even even more and even more....i'm ok , what i just want to know is... when ?
     
    Eric2241 and Baldinoboy like this.
  9. fabianzz

    fabianzz

    Joined:
    Nov 24, 2012
    Posts:
    39
    Any progress on this? Seems like this was just put out to troll the entire community.
     
    antislash, Baldinoboy and neoshaman like this.
  10. Assembler-Maze

    Assembler-Maze

    Joined:
    Jan 6, 2016
    Posts:
    630
    Hey,

    It seems, from what I've talked to people (including unity) that we are still going to have to wait a few more months for this. They even didn't want to support me with source code or extra help when I wanted to rig my own system. If you are not an big company AAA developer with thousands of dollars in cash forget making your own system or forget source code access to make your own.

    Btw if you are interested in grass/tree billboard performance issues I've managed to rig out some kind of system that kinda works, partially with a lot of workaroundy workarounds.

    If interested see the full discussion at:
    http://forum.unity3d.com/threads/speed-tree-optimisations.317585/
    bottom of the page.
     
  11. BornGodsGame

    BornGodsGame

    Joined:
    Jun 28, 2014
    Posts:
    587
    There was a mention in the comments from the blog about the new splashscreen. One of the Unity people said they are busy at work on the terrain system. I think the team that is working on it is just one of those teams that does not have a very ´consumer friendly´person on it.
     
    antislash likes this.
  12. Assembler-Maze

    Assembler-Maze

    Joined:
    Jan 6, 2016
    Posts:
    630
    Hey,

    Until we have that cool new terrain system I tried to make up a little for the lack of cool Unity grass (and any cool grass on the asset store imo) with "Critias SpeedTree Grass System". Maybe anyone's interested.
     
    Eric2241 and antislash like this.
  13. jamesflowerdew

    jamesflowerdew

    Joined:
    Apr 29, 2009
    Posts:
    10
    Wanted to build on this:

    Don't Build a Terrain: Build a Set of things that can be useful for a terrain, or anywhere else.

    Trees (or more acuurately, large mass of objects that have physics and render cheap) placed on any mesh With no depencdencies on weird shaders , let us choose. Batch drawn so dead fast.

    Grasses (a larger simpler mass of less complex meshes/posters for sticking on any mesh), again batch like crazy but let us choose the shaders.

    Terrain (the wiggly bumpy thing that actually is rough land), preferably with the ability to go convcave (for bridges and caves, but just that, no bells.

    No DX11, keep it simple for phones, dogs, and mortals.

    Also note All of this should ideally be directly easily accesssed and edited at runtime as well as in the editor.

    Having this stuff all heaped together in a black box means that in order to have one neat effect you need to inherit many other possibly irrelevant/crap effects.

    For various reasons I have spent years replacing features from your terrain system just because all tools do not fit exactly, access to the key features without having to lump with the whole thing would have saved months.
     
  14. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    Unreal 4 has some issues also with terrain, it is better than Unity but it is not optimized and lacks a forward renderer, Epic seems to have let down terrain features after the Kite Demo.
    For Unity the best option is not to wait but take a good plugin on the Asset Store.
    No 3D engine is perfect.
     
    Baldinoboy likes this.
  15. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    What alternative is there that improves performance over Unity terrain? While there are a few great terrain shaders in the asset store, the only actual terrain replacements are voxel engines and they not only take more memory, but also perform worse than Unity terrain.
     
    Baldinoboy likes this.
  16. Baldinoboy

    Baldinoboy

    Joined:
    Apr 14, 2012
    Posts:
    1,526
    Honestly it feels like the only way to have a decent terrain system is to either play with Cryengine with no game development plan in the future or build your own engine.

    If a talented and practice developer were to make a new terrain system that included the features to have advanced tree, plant batching to have a large forest without a 60 something thousand limit, plus decent terrain control like special painting features for textures and foliage they would make a killing. As long as they do not charge thousands of dollars for features most users do not need.

    I do not think Unity will be releasing a new working terrain system anytime in years. I am sorry but I do not. It takes time to get all the issues fixed with an open beta in Unity and so far we only got one comment on this thread from Unity about the terrain. Not meaning to be negative but instead really hope there is a developer, not in Unity, who plans on making their own simple but working terrain system. Other great developers assets for additional features like shading can fill in the gaps that will be requested. I have a lot of faith in a lot of Asset Store devs and hope one of them or a new one is looking into this.
     
    one_one likes this.
  17. Assembler-Maze

    Assembler-Maze

    Joined:
    Jan 6, 2016
    Posts:
    630
    Hey, just in case you're interested, besides the grass system I'm working on (check it out, 10milion blades of grass!) i also work on a tree system designed for huge open-doors, that looks and feels exactly like the SpeedTree system, minus the 'Unity' performance cost. It will not be capped at ANY count of trees. I already have great performance, with 100k+ trees, SpeedTree LOD transitions, tree-billboard transitions, practically no visual difference. Can't wait to make a demo with it!

    Unfortunately I need about 2-3 more weeks for it, but I'll let everyone know when a demo is ready. The SpeedTree docs helped a ton.

    One huge problem in Unity is lack of c++ code, since everything is coded into c#, incurring some performance overhead.

    And we don't need only a tree/grass system, we also need a decent decal system and a decent detail system. The stock one from the terrain is quite bad, it doesn't support the millions of details with colliders that we require.

    And don't think CryEngine is a silver bullet. I tried it out and it has quite a lot of problems and limitations and the terrain is among them.

    What we need for Unity is c++ code source, and we should 'lobby' a little harder for that...

    But yea, even if not a perfect solution UE is a lot better than Unity from many points of view and a lot of things it comes from stock and that you don't have to build from scratch.
     
    Kridian and one_one like this.
  18. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    Unity success is because of C# and CryEngine is trying to get C# for that reason.
    About optimisations there is lot of areas to improve before needing C++, more real project games collaboration like "Recore" game is what can enhance Unity a lot.
     
  19. Assembler-Maze

    Assembler-Maze

    Joined:
    Jan 6, 2016
    Posts:
    630
    Yes, for the most part it's better to code in C# when it's about gameplay. I even think that a visual-blueprint for gameplay coding would improve Unity a lot (a built-in one, not asset store one).

    But when it's about low-level sub-systems like trees, grass etc... coding it in c++ can make a huge difference + you can see how they managed to solve-some issues, better profile code etc... And since most games made in Unity are mobile-oriented or small PC ones I guess that yea... c++ would benefit only a minority of the people out there.

    And again not only that, but some problems are absolutely un-solvable without c++ code. For example in my grass system I had to find some very funny workaround for animating the grass that is drawn instanced. The player always carries around an 'aura' of invisible grass around so that I can copy the MPB from those and pass it to the instanced grass. Can't solve that without c++. And again, with the new tree system I have a lot of headaches trying to induce/dream what they had in mind when they made a thing in one way or another.

    When I'll release the tree system you'll see exactly what I mean.

    P.S: If you can live without awesome trees and awesome grass you can have games like 'Recore' without needing any of the above-mentioned integrations :)
     
    Last edited: Oct 20, 2016
    one_one likes this.
  20. Baldinoboy

    Baldinoboy

    Joined:
    Apr 14, 2012
    Posts:
    1,526
    That will be great to have! Looking forward to updates on it.

    That is why I said
    Meaning it is fun to play with but would not even dream of making a project in the engine. It still is an amazing terrain system though. No other engine comes close to the control and features of it.
     
  21. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Excellent. To confirm, it still works fine with existing Unity terrain? Looking forward to using new vegetation.
     
  22. Reanimate_L

    Reanimate_L

    Joined:
    Oct 10, 2009
    Posts:
    2,788
    is there any more update terrain team? it's been a while. . . .
     
  23. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Btw, I've taken the liberty of deleting a bunch of posts that have no place where the discussion is Unity terrain. Keep it on topic.
     
    JamesArndt likes this.
  24. Reanimate_L

    Reanimate_L

    Joined:
    Oct 10, 2009
    Posts:
    2,788
    can you ping any terrain team member? :p
     
  25. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    They are hard at work. I know everyone is excited but they will reply when they have something further to show, rather than tormenting you.
     
  26. Reanimate_L

    Reanimate_L

    Joined:
    Oct 10, 2009
    Posts:
    2,788
    well we are tormented already :D
     
  27. Baldinoboy

    Baldinoboy

    Joined:
    Apr 14, 2012
    Posts:
    1,526
    Rather be given a meal once in a while to keep me alive rather than being starved for months or even years on end not knowing if the cook is even in the kitchen. That is how I feel at least.
     
    Eric2241 likes this.
  28. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    I agree. I know the team is busy and we don't want them spending all their time in here answering questions, but there should be a community facing person who can give small updates on a regular basis so us game developers have an idea of how things are progressing.
     
    JamesArndt and Baldinoboy like this.
  29. Assembler-Maze

    Assembler-Maze

    Joined:
    Jan 6, 2016
    Posts:
    630
    Just a note, I've said I'll have something ready in a week or too, but I was fast and furious and if anyone is interested, my tree system is here.

    100k trees at 150-450FPS on a GTX970 DX9/11, almost perfect transitions, done in 1 week and a little.

    When the Unity guys will implement their new system they should look at how I've implemented it based on the SpeedTree's SDK documentation, a.k.a the official correct way. For the grass system I think they should do the same. No bad lods, no runtime batched trees, no tree instances, no extra useless rendering overhead. If I'm not clear enough, the SpeedTree's SDK is.
     
    Last edited: Oct 21, 2016
  30. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Regarding
    ... I see this being useful for a lot of things not just grass and so on, maybe rocks and stuff too.
     
  31. Assembler-Maze

    Assembler-Maze

    Joined:
    Jan 6, 2016
    Posts:
    630
    As an update, if anyone is interested, I've just released the pre-alfa of my SpeedTree system (250k trees, at 420FPS), with full source-code access. It can easily handle a quarter million tree instances, handle transitions etc... etc...in one word, act almost exactly like SpeedTree, minus the performance cost :)

    I am sorry that it doesn't work out-of-the-box perfectly since it is the work of a week and two days. Unfortunately it is not yet recommended for granny's and code-agnostic artists.

    You can find the project here and the WIP forum here.
     
  32. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    Not usefull for people that doesn't use SpeedTree plugin.
     
    Baldinoboy likes this.
  33. Baldinoboy

    Baldinoboy

    Joined:
    Apr 14, 2012
    Posts:
    1,526
    Definitely. Need a user friendly system that works with any model type, shader. Glad you are working on this @Assembler-Maze and hope some work on what you are creating for others to use. Seems like the only hope for someone who wants a better looking terrain than pre Far Cry 1.
     
    antislash likes this.
  34. Assembler-Maze

    Assembler-Maze

    Joined:
    Jan 6, 2016
    Posts:
    630
    Yes, I am sorry for that. The detail system will be made for any object type.

    But, if you expect the out-of-the-box system that works with everything, you shall need to wait a few more months till the unity guys sort it out, sorry :). And nobody stops you from modifying my system (if you have a coder) so that it works for all tree types.

    Best luck in your future project!
     
    Baldinoboy likes this.
  35. Baldinoboy

    Baldinoboy

    Joined:
    Apr 14, 2012
    Posts:
    1,526
    No, not upset with your work. What I meant was as open as you are with your 'in the right direction' work I hope there to be more expanded work with other devs that will fill in the pieces for all the users. So thank you for your contribution to the community. Really wish I had the ability to be as helpful as this.
     
    Assembler-Maze likes this.
  36. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    About terrain texturing the best way would be a terrain where we could drop any shaders made in a shader editor like UE4 or modify predefined terrain shaders with the same shader editor. This allows more flexibility than predefined terrain and texturing shader, as you can add triplanar UV or not , or some POM or not depending or make a stylized shader depending on your project. Otherwise, there is Asset Store as always to rescue.
     
  37. JamesArndt

    JamesArndt

    Joined:
    Dec 1, 2009
    Posts:
    2,932
    Not sure if this was mentioned, but what about supporting terrain that blends seamlessly with placed 3D meshes via vertex painting or something? As for grass, I was curious if particles could be used for a vegetation planting system?
     
  38. antislash

    antislash

    Joined:
    Apr 23, 2015
    Posts:
    646
    geom blending
     
    JamesArndt likes this.
  39. JamesArndt

    JamesArndt

    Joined:
    Dec 1, 2009
    Posts:
    2,932
    Yes. I believe this has been a standard thing in Unreal for a little while.
     
    antislash likes this.
  40. one_one

    one_one

    Joined:
    May 20, 2013
    Posts:
    621
    Geometry blending needs to be painless and ideally fully dynamic with a modern terrain system. It makes the difference between additional objects like rocks and cliffs looking either glued or like actual parts of your terrain so it's an important part of creating coherent environments.
     
    antislash likes this.
  41. antislash

    antislash

    Joined:
    Apr 23, 2015
    Posts:
    646
    i wish some fresh news on that new terrain system soon..... terrain team, please.
     
    Baldinoboy likes this.
  42. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    RTP3

    I wish the terrain tools will have a feature to prevent grass to be under objects when we place or move objects like rocks.
    Rock placement at 27:00



    I am not sure Unity will do better than RTP3 that is fully complete and supports Tesselation as LOD to optimize rendering speed of terrain.
     
    Last edited: Nov 2, 2016
    Baldinoboy likes this.
  43. Deleted User

    Deleted User

    Guest

    The community in UE4 suggested a grass blocking volume, it was a good idea..

    Actually on that subject, I'm not sure if @bibbinator or someone else can answer this yet? What about the surrounding systems? I've not used Unity for something massive in a long while, so I'm out of the loop.

    Are we all sorted with streaming / async'ing chunks of terrain with seperate systems like Umbra / GI / Navmesh? Just to note, it would be nice (as it probably won't be re-vamped for a long while) to have the systems used in your demo's cleaned up and added as native solutions. Like atmospheric scattering, fog with with in-scattering, vertex painting, deferred decals etc
     
  44. antislash

    antislash

    Joined:
    Apr 23, 2015
    Posts:
    646
    if we talk about vegetation placement then we should go with more complete features :
    - custom paint brushes with size variation, density etc depending on pressure
    - define vegetation sets with size/frequency/density
    - define vegetation sets rules (depending on types of vegetation, slopes, terrain textures, terrain type etc)
    - repulsors and attractors (trees, rocks, ponds watervolumes)
    - placement tools : hedges, rows, plantations etc
    - trim/resize, repulse, attract, clump , group , cluster, paint around tools
    and so on
     
    Baldinoboy likes this.
  45. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    I would just rather have the technology in place first - at least the community can then easily place them with any number of tools while waiting. This way, we get it now, not later.
     
    one_one likes this.
  46. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,030
    I agree. The most important thing right now is a higher performing base terrain system with the infrastructure in place to do all the things we eventually want it to do. So, out of the box it should be as capable as what we have now, but lightning fast performance.
     
    hippocoder and one_one like this.
  47. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    Why not some basic SVOGI like lightening ? baking is useless if we use time of the day.
     
  48. antislash

    antislash

    Joined:
    Apr 23, 2015
    Posts:
    646
    sure, i'll wellcome technology now, i hope the system will be open enough to extend tools
     
  49. antislash

    antislash

    Joined:
    Apr 23, 2015
    Posts:
    646
    #cryengine :D
    SVOGI works like a charm, realtime, and yes baking is a pain in the butt.
    but unity is an engine that has to cover from 2d game to 3D games, cryengine only cover (till now) hi spec games, thus high perfs but no scalability.
     
    Baldinoboy likes this.
  50. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    GI isn't actually all that necessary for outdoors, it's really hard to get great use out of it (for a terrain). For a bunch of rock meshes, maybe, but even then you find GI mostly shines indoors, were you know... there's actually something to bounce from.
     
    Stardog likes this.
Thread Status:
Not open for further replies.