Search Unity

[NEW PATCH] uNature - GPU, Interactable Grass. Interactable Trees, MultiThreading and more!

Discussion in 'Assets and Asset Store' started by ElroyUnity, Apr 29, 2016.

?

Pre-release Integrations

Poll closed Nov 29, 2016.
  1. TerrainComposer2

    43.1%
  2. GAIA

    54.9%
  3. GENA

    49.0%
  4. World Creator

    13.7%
  5. World Streamer

    37.3%
  6. Map Magic

    27.5%
  7. Landscape Builder

    0 vote(s)
    0.0%
  8. SkyMaster ( Weather )

    7.8%
  9. InfiniGrass, AFS, DX11 (Integration will provide built-in shader support)

    33.3%
Multiple votes are allowed.
  1. Stormy102

    Stormy102

    Joined:
    Jan 17, 2014
    Posts:
    495
    :eek: Another $60 :( Lol well it was already on my wishlist, so I guess I know what I need more than I think :p
    Thanks guys, I guess until we replenish our $$$ we gotta have patchiness. However, if we tile our terrains, it should make it easier for the environment guys :)
     
    ElroyUnity likes this.
  2. Stormy102

    Stormy102

    Joined:
    Jan 17, 2014
    Posts:
    495
    ElroyUnity likes this.
  3. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Nice !
    Although how are you playing the game properly with a possible player position at 10k x and 10k z ?

    It will produce lots of floating point issues, i recommend implementing a streaming mechanic so basically everytime the player moves from the zero point you move him back and change the terrains instead.
     
  4. Stormy102

    Stormy102

    Joined:
    Jan 17, 2014
    Posts:
    495
    Multiplayer is the biggest issue with a streaming solution, especially as it's authoritative. And it's 8KM x 8KM so its not too bad with floating point issues. I haven't had any noticeable issues yet. Surprised Unity haven't switched Transform to using doubles - 64bit accuracy :p
     
    ElroyUnity likes this.
  5. AndyNeoman

    AndyNeoman

    Joined:
    Sep 28, 2014
    Posts:
    872
    I'm struggling to get TMS working on ForestVision tree's. I have the tree and treeworld script on the tree prefab, tagged as tree. Have tree manager object/script in the scene and have terrain and player tagged/layered. Am I missing something obvious or can i not use forestvision tree's?

    No batching going on and no colliders are being attached. Any help greatly appreciated. :)
     
    ElroyUnity likes this.
  6. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Hey Andy!

    The thread is only for uNature at the moment :/,

    Messaging you privately with a reply to your issue!

    Sorry!
     
    AndyNeoman likes this.
  7. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Hey guys here's a preview of the new shader -



    Pretty fast considering it receives and casts shadows.

    (3ms with casting and receiving shadows)
    (0.1 - 0.2 ms without casting but with receiving)

    Using 5.1.
    Please note that in 5.4/5.5(cant remmember) unity optimized the rendering on the cpu a lot so performance will even be better :)

    UI still isnt polished, so sorry if it looks messy :)
     
    TerraUnity, AndyNeoman and Stormy102 like this.
  8. Stormy102

    Stormy102

    Joined:
    Jan 17, 2014
    Posts:
    495
    Those options on the UI :eek: I'm liking it! :)
     
    TerraUnity and ElroyUnity like this.
  9. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Happy you like it, also its not all ;)
     
    TerraUnity and Stormy102 like this.
  10. Stormy102

    Stormy102

    Joined:
    Jan 17, 2014
    Posts:
    495
    So, can I have more than just colour maps for my grass? Dare I say... depth/occlusion? :D
    Also, any chance of a preview of grass interaction?? ;)
     
    ElroyUnity likes this.
  11. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Uhm at the moment no you can't, but its something i might consider, my next plan for the "maps" would be a size map, where it would change the size of your grass from an texture, for instance if you want to have a lower grass on roads/ smth like that.

    [As usual will have my own tools for creating that incase you dont have a ready one, so you wont need to buy an external tool for that]


    And interaction isnt yet ready, i plan to finish it this week and then polish the asset, add integrations, update documentation, make some tutorials and release it, hopefully not more than 2 weeks
     
    AndyNeoman and Stormy102 like this.
  12. Stormy102

    Stormy102

    Joined:
    Jan 17, 2014
    Posts:
    495
    Ah okay gotcha. Also, with regard to grass shadows, can you give the option to have it linked in to world shadow length?
     
    ElroyUnity likes this.
  13. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Uhm what do u mean ?
     
  14. Stormy102

    Stormy102

    Joined:
    Jan 17, 2014
    Posts:
    495
  15. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Nateply and Stormy102 like this.
  16. AndyNeoman

    AndyNeoman

    Joined:
    Sep 28, 2014
    Posts:
    872
    Wow you have really nailed it Elroy. Amazing work. I cannot wait to get my hands on this.
     
    ElroyUnity likes this.
  17. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Thanks for your kind words :)
    The video had some encoding issues from reports that i got from people so i will be making a new one but in a better scene this time :p
     
  18. AndyNeoman

    AndyNeoman

    Joined:
    Sep 28, 2014
    Posts:
    872
    People can be harsh lol.

    For a pre release asset video and think it shows the possibilities very well.

    On a side note do you intend uNature to completely replace all of TMS features or would be assets be used together (even in the future not just on release).
     
    ElroyUnity likes this.
  19. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Basically it has all of the features of TMS with a lot more, so pretty much replace it completely, the code of TMS is very outdated and not nearly as efficent :).
     
    AndyNeoman likes this.
  20. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Hey guys -
    Implemented some more new stuff, recreated the wind system, optimized the asset a lot with some new techniques and I am almost done with interactions, once i am done with that i only have a few last stuff to fix and then i will start to polish the asset and update the docs for release !

    Will hopefully be done with all of that by Friday next week :)
     
    Last edited: Nov 2, 2016
    julianr, Inspeinre, BigGuy55 and 10 others like this.
  21. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Almost done with the interaction system,
    Adding a cool feature which is full-per grass raycasting-ability :



    You can literally raycast every grass object in the scene without any overload, memory issues/ any recalculations.
    You get a similar result to RaycastHit, with the current parameters implemented at the moment (more suggestions are welcome):

    Vector2 spread; // the spread of the certain grass object
    Vector3 point; // the hit point
    float distance; // the distance from the origin to the hit position.
    byte density; // the density of the certain grass object

    float height; // the height of the certain grass instance.
    float width; // the width of the certain grass instance.

    Obviously you have an different kind of interactions that you can also code, for instance apply wind on the area when you get close to the grass, for instance when an helicopter is about to land OR when a rocket goes through the grass/ anything similar.

    You will also have an "flat" interaction so when the object goes over the grass it will flat it, with an option to choose a "growth" time, that will make it grow nicely after a certain time.

    And once again, more suggestions are welcome :p
     
    Last edited: Nov 6, 2016
  22. wwg

    wwg

    Joined:
    Apr 2, 2014
    Posts:
    121
    Hi Elroy,
    Like everyone here, I'm really looking forward to the upcoming release of uNature!

    I don't yet have TMS, so I was hoping you could elaborate on the performance improvements one can expect when using a large number of terrain trees. I've already written script for interaction of terrain trees (although, I'd happily ditch it for your code), so I'm mostly interested in the potential for better CPU and FPS performance. The asset store description for TMS states:
    • World Objects support will convert all of them into batched terrain trees and and increase performance greatly!
    • Strong grid system to divide the trees on the terrain into grids to increase performance.
    • Multi Threading, move all of the calculations from the unity thread.
    ...but in a previous post you said:
    Will TMS (and uNature) improve terrain tree performance for a large number of trees?

    Thanks,
    Chris
     
    ElroyUnity likes this.
  23. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Hey -
    Well the main idea on TMS was to remove some physics overhead and get rid of the current limit on possible trees on the terrain (once you have a certain amount, trees dont have colliders any more).

    I have big plans on managing performance on trees greatly in the future but they aren't implemented yet, so i would say that if you want to purchase uNature for trees performance at the moment, dont, as it wont help as much :).

    I will make sure to fix the post now, thanks for pointing that out, i dont want to mislead people :)
     
  24. Quen

    Quen

    Joined:
    Apr 6, 2010
    Posts:
    21
    Can this feature be turned off? I am looking for A LOT of good looking grass, but no interaction. So I would like to save performance by turning it off ;)
     
    Knightmore and ElroyUnity like this.
  25. Killersan

    Killersan

    Joined:
    May 27, 2014
    Posts:
    76
    Hello ElroyUnity, I have to admit that I subscribed this thread because I'm very interesting of You solution for grass.
    Do You have release ETA ?
    As I assumed well it should be this Friday, right ?
     
    ElroyUnity likes this.
  26. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Hey,

    Thank you for your interest :).

    Currently i am partially on schedule, had some delays as i implemented some new features (that are going to blow your mind, trust me ;))


    I will announce a final release time this Friday, somewhere next week though, but trust me, its closer than ever, so wont be delayed any more most likely.
     
    John-G, TeagansDad and AndyNeoman like this.
  27. Killersan

    Killersan

    Joined:
    May 27, 2014
    Posts:
    76
    I really like features which You already presented, can't wait to buy it and lay dawn my hands on it :)
    Friday announcement is a pretty good information, hopefully You won't have any delays and package will hit the store according with schedule.
     
    ElroyUnity likes this.
  28. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    I hope so as well :)
     
  29. Der_Kevin

    Der_Kevin

    Joined:
    Jan 2, 2013
    Posts:
    507
    Looks awesome!
    Will get it for sure. Just 2 little questions:
    - does it work with mapmagic?
    - is there something included like grass bending when the player runs threw the grass?
     
    julianr and ElroyUnity like this.
  30. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    1) I will integrate all of the existing terrain engines into it by the time its released so yes! :)

    2) At the moment i already implement phase 1 of the interaction (per-grass raycasting) and now i am working on other interactions like grass bending, area grass wind and more :)
     
    Stormy102, John-G, Killersan and 3 others like this.
  31. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    So i promised that i will post an update about the release date today and here it is :)

    Over the past month i've rewritten some aspects of uNature, literally went over the design about 20 times a day and changed even the tiniest things that i thought that could be improved,

    Currently i am really close to releasing the asset, but some stuff still aren't done :

    1) Fix some chunks related issue that once fixed should increase performance A LOT for grass.
    2) Finish interactions (raycasts -> pretty much done, but still need to implement stuff like wind zones and stuff like that)
    3) Rewrite the documentation and tutorials + create integrations with the popular terrain systems out there
    4) Make the shader easy to integrate and use in any kind of a custom made shader (pretty easy to add this one)
    5) Add support for gpu instancing.

    Other than that its pretty much ready, so i thought that instead of pushing out dates all the time that can be changed maybe i will set up a way for you guys to see the progress and when i finish something/ work on something i will update the amount of work left/ something like that.

    If i do it that way it will probably be the easiest to track and get a better release estimation, what do you guys think ?


    Also, many people asked my TMS suddenly costs $40, its because i am really close to releasing uNature and that will be the initial price of it, so if you bought it before the price change you are lucky and saved $20 ;), please dont buy TMS now if you want to save money on uNature because you wont :/.
     
    julianr, recon0303, radimoto and 7 others like this.
  32. buronix

    buronix

    Joined:
    Dec 11, 2013
    Posts:
    111
    Hey!

    I have a question about unature, I want to quit from unity terrains cause they are killing my performance, I create my world procedurally and Right now my big issue to keep unity terrains is the detail(grass) management, will this system support multiple grasses, custom meshes for grass and the possibility of generate them un runtime?

    How will manage the grass position in a mesh? heightmap or something similar?

    Thanks in advance!! (look this in the uconstruct thread!!, other product from you that Im using.)
     
    ElroyUnity likes this.
  33. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Hey :)

    Yes!
    It supports any mesh surface, supports dynamic surfaces as well, that means that if you change the position, rotation or scale it will automatically update the height accordingly, it also has many optimization methods and can support as many prototypes as you want really, but if you use too much density it would be super slow, because of overdraw.

    Naturally it also supports mesh grasses and yes, you can generate anything on runtime, you can update the height, normals or what ever you want as well as using the original brush from the editor on the standalone game itself :D
     
    Crashnblake, Stormy102 and buronix like this.
  34. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    BETA 4.0 has been released for my testers, some amazing progress there.
    I really want to setup a good demo in the next couple of days to get some benchmarking and show you the power of the system, or would you prefer some tutorials and trailers ? (So you can actually see the system behind the scenes)

    Please vote here: http://www.strawpoll.me/11656645

    So far got only 2 more stuff or so to do and i will release the asset, been working hard on the visuals this week and it looks absolutely amazing.

    Will try to setup a scene so i can show some of the new visuals and performance improvements :).
    Edit: Please note that in the vote Tutorials + Trailer comes together i made a mistake when creating the poll!, sorry!
     
    Last edited: Nov 15, 2016
  35. Knightmore

    Knightmore

    Joined:
    May 11, 2012
    Posts:
    226
    So it is happening soon? :eek:
    I would rather go with a demo before release than tutorials. One thing I learned from Adams GeNa release is, that customers will get crazy and ask the same questions more than ten times how good the system works if they don't get some footage :D
     
    TeagansDad and ElroyUnity like this.
  36. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Yea but i know that many people like to see the tech side, and less the visual side because visuals can always look amazing on the pictures and videos but when you get the actual system it doesn't, so i wan't to make sure that when they buy uNature they know what to expect :) (not saying that its bad, i am super proud of uNature and i think that its an amazing tool but i've seen those things happen)

    Either way, what ever will be chosen will be released first! :D
     
    Knightmore likes this.
  37. Knightmore

    Knightmore

    Joined:
    May 11, 2012
    Posts:
    226
    To be honest, I don't really care that much which one comes first as you convinced me and I already got TMS directly after we talked about everything. I am sure uNature will be amazing too and does a great job for my 1x1 km terrain tiles ;)

    The more difficult question for me is now: Should I use speedtree grass with it or some nice textures like from turboscalpeur :p
     
  38. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Haha happy to hear :)

    And both would work, honestly you could get some amazing results using @turboscalpeur 's textures, they are simply amazing and if you enable shadows as well it looks mindblowing.

    Same can be done with speedtrees, i will include some pictures with using both so you could see the performance impact, and visuals :)
     
  39. turboscalpeur

    turboscalpeur

    Joined:
    Nov 29, 2015
    Posts:
    286
    If you have subscribed for the SpeedTree Modeler, you can use every of my Grass Textures too and then optimize them in it ;)

    Another idea, why not mixing SpeedTrees and mines too :)

    Then after, using uNature for "Save Life" Perfs !!

    Have fun !
     
  40. TeagansDad

    TeagansDad

    Joined:
    Nov 17, 2012
    Posts:
    826
    Hey, are there any videos if this yet? I can't be bothered to read beyond the single most recent post so that I can see what this asset does, even though I'm interested in buying it.o_O
     
    Quen and ElroyUnity like this.
  41. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Okay guys so development has been progressing extremely well.
    All that i have left for the grass aspect is to finish the interactions, some bugs that will be reported from the testers before release and then all that's left is docs, tutorials and interactions (which isnt as bad as it sounds)

    I've added a poll to the thread on what integrations would you like to see before release, you can choose up to 5 systems, the top 5 will be added before release and the rest in the future. (If you only want less than 5 then choose only the ones you want, you dont have to choose exactly 5 :D)

    Currently fully integrated systems:

    -UFPS
    -Photon Bolt
    -Photon Cloud
    -Forge
    -UNet

    And before release obviously my other asset - uConstruct.


    [IF I FORGOT ANY SYSTEMS ON THE POLL, PLEASE MESSAGE ME HERE/ PRIVATELY AND IF IT COULD BE USEFUL FOR UNATURE I WILL ADD IT]
     
  42. Knightmore

    Knightmore

    Joined:
    May 11, 2012
    Posts:
    226
    Glad that I could use 5 votes as I needed all of them :oops:

    The systems provided by @AdamGoodrich and @nasos_333 together with uNature and I should never have again any troubles with open world design. :p
     
    ElroyUnity likes this.
  43. Wizard-Games

    Wizard-Games

    Joined:
    Jun 4, 2013
    Posts:
    34
    Here is the first test mainly just to see how UNature performed with alot of grass. It is only one grass type but it shows the density you get.
     
  44. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    :D

    Looks great ;)
     
  45. AdamGoodrich

    AdamGoodrich

    Joined:
    Feb 12, 2013
    Posts:
    3,647
    Nice work Elroy!
     
    Teila and ElroyUnity like this.
  46. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Thanks Adam!
     
  47. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Many people asked me why the density on @Wizard-Games video looks rather small and if thats all uNature can handle, well no, it can handle a lot more, the small density is because he has a 4096 area on 2048 resolution, and he might have chosen a small density but either way its up to you what density you use so no worries :)
     
  48. Mark_T

    Mark_T

    Joined:
    Apr 25, 2011
    Posts:
    303
    It would be nice to have a smooth fading transition to avoid the grass patches suddenly popping up in the distance, like in the video. It really breaks the magic.
    I already purchased TMS and I voted for the demo to see how much performance can be squeezed on heavy loads/scenes scenarios and how it behaves far in the distance. Having the demo made with both terrains and meshes and with more than one grass/texture would be relevant, me thinks.
     
    ElroyUnity likes this.
  49. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,583
    Yep just implemented fading, thanks for the feedback !
     
    Crashnblake and hopeful like this.
  50. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,794
    Fabulous, Elroy! Wizard Games density looks great to me. Looking forward to your asset. :)
     
    ElroyUnity likes this.
unityunity