Search Unity

  1. We've closed the job boards. If you're looking for work, or looking to hire check out Unity Connect. You can see more information here.
    Dismiss Notice
  2. We're running great holiday deals on subscriptions, swag and Asset Store packages! Take a peek at this blog for more information!
    Dismiss Notice
  3. Check out our Unite Austin 2017 YouTube playlist to catch up on what you missed. More videos coming soon.
    Dismiss Notice
  4. Unity 2017.2 is now released.
    Dismiss Notice
  5. The Unity Gear Store is here to help you look great at your next meetup, user group or conference. With all new Unity apparel, stickers and more!
    Dismiss Notice
  6. Introducing the Unity Essentials Packs! Find out more.
    Dismiss Notice
  7. Want to see the most recent patch releases? Take a peek at the patch release page.
    Dismiss Notice
  8. Unity 2017.3 beta is now available for download.
    Dismiss Notice

InfiniGRASS v2.0 - Next gen interactive & true non uniform volume grass, procedural worlds, pooling

Discussion in 'Works In Progress' started by nasos_333, Aug 24, 2015.

  1. mrmdesign

    mrmdesign

    Joined:
    Apr 18, 2013
    Posts:
    179
    I think this will become a 'must have' asset for a lot of people.
    The images you are posting in this thread are amazing. I am sure you (and UT) will do very well out of it.
     
  2. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    Hopefully it will do well so i can add more stuff, like stone fence creation and bushes etc, plus expand the library with more stuff constantly.

    I have many ideas how to improve and v1.1 already does moving grass with objects, multiple LODs, many new paint types (stones, mushrooms etc) and Terrain texture based scaling.

    Usually reviews for a pack is the most important factor in its growth.
     
  3. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    [​IMG]

    Isle demo, Sky Master ULTIMATE v3.0 for water, clouds, sky and fog, InfiniGRASS on foliage
     
    garrido86 and mrmdesign like this.
  4. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    [​IMG]
    [​IMG]

    More from the isle demo
     
    garrido86 and mrmdesign like this.
  5. paulojsam

    paulojsam

    Joined:
    Jul 2, 2012
    Posts:
    437
    amazing stuff! Me want!
     
    nasos_333 likes this.
  6. mrmdesign

    mrmdesign

    Joined:
    Apr 18, 2013
    Posts:
    179
    Can I just pay you and get this now? UT are taking ages. ;-)
     
  7. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    Thanks :)

    Indeed, i never though would take that long. I have almost doubled the extra features during that time for v1.1 :)

    I will send an email to see if there is an issue with the submission.

    Unfortunately i cant support out of store distribution, as my time and resources are very limited and wont be able to support sending updates through email etc
     
  8. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    UPDATE:

    I am fighting a small bug where some blades will rarely appear in the zero point of the map. Seems that the same raycast gives different result for some reason (i do it once to cut back blades and when this passes, sometimes the placement same raycast fails for some reason)

    The fix to this will come in v1.1
     
  9. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    Extreme test, very thick grass, reflective - refractive water (Sky Master v3.0), full shadows and image effects. Running on my old PC (core 2 duo).
    [​IMG]
    [​IMG]

    UPDATE:


    The small bug is now fixed.


    List of updates so far for v1.1

    - Ability to sort batching by target object has been added and it is now possible to control grass with the object transform.

    - Added an option to follow the object grass is painted on. This is more expensive than static grass, but wont show in lower quantities. Two modes are available, parent to object or follow transform. The object must not be scaled (grass follows rotation - translation) in the latter method.

    - Fixed small bug where some blades would in rare case appear in 0,0,0

    - Fixed bug where absense of Unity terrain would create an error (in v1.0 Unity terrain must be preset to paint grass)

    - Added two more LOD levels, now materials must be named LOD0, LOD1 and LOD2 and their items must be disabled in the source prefab

    - Added option to avoid hitting the own grass collider of painted grass

    - Added option to randomize grass rotation, both uniform and randomized are very usefull and provide different looks. (That is additionally to towards surface normal orientation)

    - Added new 3D "grass" sample brushes, Rocks and Mushrooms with LOD setup, Ground Leaves and extra vertex varieties (Wild grass)

    - Added support for texture based grass scaling depending on Unity terrain splat maps.

    - Addition of castle like wall in demo for vertical painting and some new ground textures to increase ground quality.


    It is starting to look more like v2.0 :)
     
    Last edited: Sep 9, 2015
  10. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    [​IMG]
    [​IMG]
    [​IMG]

    Some more WIP, integration with Sky Master night, volume fog-clouds and sea
     
  11. mrmdesign

    mrmdesign

    Joined:
    Apr 18, 2013
    Posts:
    179
    I understand.
    I am just so keen to get to work with this awesome asset.
     
  12. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    [​IMG]
    [​IMG]
    The least i can do is post some more pics, to ease the waiting :)

    This is from v1.1, i have an option to randomize grass rotation for various looks. In the low grass case it makes it look thicker and fuzzier and is great for giving extra variety and volume.
     
  13. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    Multiple LODs allow huge ammounts of detailed items to be painted.[​IMG]
    Low specular on rocks - musgroom
    (direct individual shader control in v1.1)
    [​IMG]
    Per grass color tint,
    with pattern frequency and intensity controls
    [​IMG]
    High specular on rocks
    [​IMG]
    [​IMG]

    UPDATE:

    Added color tint (with power and pattern frequency controls) per grass type and specular is now also controlled individually for each type as well.

    After lots of testing, this makes more sense as each shader may need micro tweaking and a mass change for all grass types did not work well.

    Also the manual for v1.1 is now done and only thing remaining is a bit more testing and adding LODs to one of the mushroom brushes.
     
  14. AlteredPlanet

    AlteredPlanet

    Joined:
    Aug 12, 2013
    Posts:
    379
    any idea when it hits the store
     
  15. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    It was submitted in the 1st of September, so any day now if it passes the store review.

    Probably it is a very busy period for the store, i had some simple price changes too for my other packs which have yet to pass review as well.
     
  16. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    [​IMG]
    [​IMG]
    [​IMG]
    [​IMG]

    The new demo is almost done and will be uploaded soon. Some pics showing the new options.
     
  17. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    Scaling per splat map (weighted) in v1.1
    [​IMG]
    [​IMG]

    InfiniGRASS v1.1 NEW Demo - Multiple LODs - Per splat map scaling - new Brushes (rocks, mushrooms, wild grass, ground leaves) - Object follow mode
    https://dl.dropboxusercontent.com/u/79230236/INFINIDY/INFINIGRASS/INFINIGRASS_PAINT_DEMO.html

    The demo still needs some small refinements (a grass is very dark and minor tweaks).

    It is possible to paint grass on the moving ball as well and the ball can be hit by the balls the player cast with "enable balls" button. When casting grass cant be erased.
     
  18. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    A note about v1.0 of InfiniGRASS

    Since v1.1 has an exponential growth in features (extra LODs, object based motion, texture based scaling and much more) i would recommend waiting for v1.1 release to use the system for production, in case some alterations are later needed for LODs mainly (materials in v1.0 are named with LOD, while in v1.1 with LOD0 to LOD2).

    Since the store has not done the review yet, i am thinking of submitting v1.1, with the risk of reseting the timer and maybe wait another 1-2 weeks for release.

    I would like some input for that, another idea is to leave the v1.0 relase to happen and submit v1.1 the same day (it is ready to go), so the system is out to get accustomed with.

    I am open to suggestions on how to handle this best.
     
  19. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    I just realized that the GUI in the demo creates spikes that can even halve frame rate, i get spikes down to 30fps when without GUI it is steady 60+ fps !!!!

    This is solved when the GUI is turned off during moving around / painting, so remove the GUI to see the actual performance in the demo.
     
  20. AlteredPlanet

    AlteredPlanet

    Joined:
    Aug 12, 2013
    Posts:
    379
    GUI in 5.2 is un optimized
     
  21. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    I use Unity 5.1 and a basic older GUI approach. It was rather unbelievable when i was looking for the cause of some spikes and realized that removing the GUI solved it completly and was back to smooth. The framerate was fluctuating between 30-60fps and when removed it was smooth 60fps throughout.

    The profiler had two GUI related entries staying at the top almost constantly, GUI can be heavier than the game itself as it seems :). I noticed it got a lot worse while in motion, this is where it dropped to 30fps mainly.

    I have some images in the GUI, so i suppose this may be one of the major things that take up so much.
     
  22. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    [​IMG]
    [​IMG]

    InfiniGRASS v1.1 NEW Demo - Multiple LODs - Per splat map scaling - new Brushes (rocks, mushrooms, wild grass, ground leaves) - Object follow mode
    https://dl.dropboxusercontent.com/u/79230236/INFINIDY/INFINIGRASS/INFINIGRASS_PAINT_DEMO.html

    The final demo has been released, always pick the grass brush and close the GUI while moving/painting, to avoid performance loss (the GUI induces a very big performance loss).

    I have decided to let v1.0 pass review and submit v1.1 soon after, so the pack can bought as soon as possible. For production it is recommended to use v1.1. Also I have sent an email to check if everything is ok with the review, hopefully will be out soon.
     
    mrmdesign likes this.
  23. mrmdesign

    mrmdesign

    Joined:
    Apr 18, 2013
    Posts:
    179
    I am so glad you are letting v1.0 pass review. I definitely need this sooner rather than later. If we buy then send you the receipt can we get v1.1 direct?
     
  24. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    Sure, i was just going to post about it :)

    I can upload in a dropbox folder and send the link. I have completed and tested v1.1 and is ready for release as well, so there will be zero waiting after the pack is on the store..
     
  25. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    [​IMG]
    [​IMG]
    [​IMG]
    [​IMG]
    [​IMG]

    Some more pics, real time painted in the demo.
     
  26. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    InfiniGRASS v1.0 has been released on the store !!!!!

    Link:
    http://u3d.as/jiM

    Everyone that would like to have v1.1 that has multiple new features, please send the invoice number in a PM and i can send a dropbox link to the pack update.
     
    AlteredPlanet likes this.
  27. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    I put together some hints on the grass painting procedure in Unity Editor, from my experience trying to populate a massive map.

    The system can be taxing in the Unity editor, so a specific strategy is required if massive amount of grass is to be painted.

    As a first step, always create a backup of the scene, as massive ammounts of anything may create a crash.

    Here is the steps to eliminate editor performance and stability issues:

    1. Create a grass manager and start painting on a smaller area of the map.

    2. Save the scene gradually and when the area is done, ungrow it so it takes up nothing in the save file and does not slow down the Unity editor anymore. This grass will appear in play mode normally. IMPORTANT: Ungrow of massive amount of grass may crash Unity editor, so keep each manager with a reasonable amount of grass.

    3. Re-grow to edit further. Avoid growing back more than one grass managers at once.

    4. For the dynamic grass or real time growth, use a separate Grass Manager and make sure it is the only one active during gameplay.

    I have tested this method and works like a charm, as painting gradually the grass eliminates any Unity Editor issue. This way the scene can have any amount of grass, which will grow when the game is entered.

    Note that grass should not be erased manually, it must be deleted using the Grass Manager erase (or mass erase option) tools.

    Later versions will also get map distribution automation, this will be WIP for some time as it is rather hard to get right with a system like InfiniGRASS that allows any amount of detail to be present. I must make sure it will be stable to perform the auto grass planting, so lots of testing and tweaking will also be required.

    Note also that massive amount of such detailed grass/prefabs may create stability issues, so for vast maps it is advised to use InfiniGRASS for local super detail in key spots and use Unity grass or sparse InfiniGRASS as filler.
     
    Last edited: Sep 11, 2015
    AlteredPlanet likes this.
  28. mk1978

    mk1978

    Joined:
    Dec 27, 2009
    Posts:
    276
    I would like to ask a couple of more question. Please forgive me if this already answered because the thread is getting quite long already.

    You already mentioned that Terrain Composer support is planned but meanwhile is there any video available that would demonstrate how to place the grass in the scene, basically how do you use editor to paint the grass? Naturally, the interest from my side would be how to paint grass effectively in large scenes and can you control that you can plaze grass only on top of certain texture.
     
  29. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    The grass is painted locally with brushes and using the mouse, there is no texture based placement feature yet. I have texture based grass scaling though, so the next step to have placement as well is not far away.

    Also while theoretically you can have vast amount of grass during gameplay, i have noticed that in the editor side there is instability when lots of grass is painted in one manager or huge amount of grass is grown at once. I have added a procedure above to split to managers and ungrow the grass gradually, so you can fill bigger spaces.

    Also if vast amounts is planted and depending on the density and prefab quality, there may be ram issues when entering play mode, so this must also be kept in mind. I had one crash when entering play mode after painting a huge amount of grass, though this was solved when i restarted Unity and play mode was entered properly.

    I would use InfiniGRASS for giving lots of detail locally in large maps and depending on the target plaform ram and abilities. Then use Unity grass as filler for extremely large regions or InfiniGRASS with lower density and prefab polygons.

    The in game performance with any amount of grass is still great, the only limitation is Unity editor and ram when having so detailed grass. My PC only has 4GB ram and a slow CPU though, so a proper machine may be able to handle the editor side a lot better.
     
  30. MarcusWatson

    MarcusWatson

    Joined:
    Dec 9, 2014
    Posts:
    52
    Purchased!

    Gentle reminder to update your sig ;-)
     
  31. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    Indeed, thanks for reminding me :)

    I am uploading the v1.1 of the pack, so i can send a link in PM if required, since it may be a week until it is up on the store.
     
    MarcusWatson likes this.
  32. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    v1.1 of the pack has been uploaded in dropbox, please send me a PM with the invoice number and i can PM the link so the latest version may be used immediately.

    For InfiniTREE users, there is one same script "ObjExporter.cs" in "Scripts->Editor" folder which collides with InfiniGRASS, this is just a helper script and can be deleted from either pack to avoid the collision, without any problem.

    I will have a namespace in the next version for the script as well.
     
  33. mrmdesign

    mrmdesign

    Joined:
    Apr 18, 2013
    Posts:
    179
    Got It! Thank you.
     
  34. Olafson

    Olafson

    Joined:
    Aug 7, 2012
    Posts:
    237
    After I changed the grass size and painted my objects in the editor, I clicked on "Ungrow in editor".
    When entering Playmode, the grass is being regrown, but it does not keep the size.

    Only way to fix it, is by not Ungrowing it in editor, which ofc results in a horrible performance in Playmode.
    Am I doing something wrong? To adjust the size, I simply adjusted the grass scale in the settings.

    I am using 1.1
     
  35. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    I checked and i can recreate the issue, it is a bug and i will send a fix asap in a unitypackage.
     
  36. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    IMPORTANT:

    I just realized one parameter that was meant for real time use is set by default in editor

    Please remove the "move with object" option when painting in editor (it is fine to use in real time).

    This option is meant for real time use only and in the next update will appear only when in game mode.

    If there is any slow down it is probably due to this option beeing turned on.
     
  37. Olafson

    Olafson

    Joined:
    Aug 7, 2012
    Posts:
    237
    Okay awesome.Thank you for the great support. Looking forward to the fix.
     
  38. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    Issue is now fixed, i missed an initialization when the ungrow happened, which is now activated and will grow based on the originally selected sizes.

    I will test a bit more and send a hotfix unitypackage asap
     
  39. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    I sent the hotfix, which also fixes a major batching breaking issue when "Follow Object' was activated (on by default)

    The scaling should be proper now
     
  40. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    Hi everyone,

    I have done a hotfix (v1.1a) for the two major issues that came up in the first InfiniGRASS release. I have sent it over to all PMs and please let me know if i missed one.

    One of the issues was the batching breaking when "Follow object" was selected while painting grass in editor (in game was fine). This is now fixed and grass can be painted/linked for follow object in editor.

    The other was wrong scaling when grass was un-grown in editor and left ungrown when entering the game. The scaling is now done properly.

    I hope these help, also i have added boxes to specify spread with numbers, for easier definition options.

    Please let me know if any other issue comes up and for any help.
     
  41. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    UPDATE:

    I have done some progress on integrating the Batching into the Unity Editor as well (besides play mode), to speed up painting of the grass in editor mode.

    It is already working well and is stable, besides a few things like LOD that seem to be deactivated for some reason, i am investigating and hopefully next week i can submit a vastly faster version for painting in editor.
     
  42. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    For everyone that missed the previous announcement

    InfiniGRASS v1.0 has been released on the store !!!!!


    Link:
    http://u3d.as/jiM

    Everyone that would like to have v1.1 that has multiple new features, please send the invoice number in a PM and i can send a dropbox link to the pack update.

    Please if you like the system remember to leave a review for the pack, it helps a lot with both the morale and with working faster on bringing cool new updates for the packs.
     
  43. paulojsam

    paulojsam

    Joined:
    Jul 2, 2012
    Posts:
    437
    i put the script on the grass manager folder but i cant paint grass or nothing with the right mouse, its still the mouse move , the default unity camera movement. what am i doing wrong
     
  44. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    Do you paint on Unity terrain or on a custom mesh terrain or object ?

    The paint button must be pressed before painting and "PPaint" tag must be used in mesh objects to paint on them, so the painting is controlled to only the desired objects. For Unity terrain it is automatic, as long as "paint grass" button is pressed, it will start painting.

    Other things to check is the scale of your objects (maybe grass is too small) or colliders (the grass blades are removed if they hit colliders other than the object the mouse hits)
     
  45. paulojsam

    paulojsam

    Joined:
    Jul 2, 2012
    Posts:
    437
    i am using terrain, is there some method to automaticly do it do all the terrain
     
  46. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    No, this is not supported yet, plus it would be very heavy for the editor in this version.

    The best approach is to use large brushes (big spread and density) to fill in the terrain. Since this is heavy on the editor side, it is also best practice to use multiple Grass Managers and ungrow the grass gradually. I have the procedure described in an above post (#127)

    I am working hard on implementing the bathcing in the editor and i am close, so next version may not have the editor slow down limitation with heavy grass amounts.

    About painting itself, you have to add GrassManager to an empty gameobject and press the "Paint grass" button and should start painting with the right mouse. The manager must be the selected item in the Hierarchy in order to paint as well.

    Normally it should paint right away on Unity terrain, but if it does not for some reason, try adding the "PPaint" tag on the terrain, just in case it is not recognized by the system for some reason. Do you have multiple terrains in the scene ?
     
    twobob likes this.
  47. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    UPDATE:

    The editor batching is almost done, the system is very stable and i only have one more thing to do (that is disable the in game LOD while in editor, so there is only the editor LOD active)

    I will probably be able to provide the new scripts tomorrow, for everyone that wants to use the new editor side enchancements, for great speeds in the editor as well.
     
  48. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    Vertical painting
    [​IMG]
    [​IMG]
    [​IMG]

    [​IMG]
    [​IMG]

    Great news, the editor slow down is no more, now the grass will be batched in editor as well and perform super fast as in play mode. I am doing some final tests and will have the code hotfix ready tomorrow.

    This was much needed as i had focused on real time performance and the editor side is as important to have perform super fast with lots of grass around, and i am trying my best to make it happen as soon as possible.

    If anyone would like to "beta" test the new scripts right away, before i do more checking, i can send them in PM as well.
     
  49. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    UPDATE - Major Editor painting related enchantments are on the way soon:

    The system for speed up the grass painting in Unity Editor is now working perfectly and has been tested extensively, so i will be able to send the hotfix v1.2 for the scripts later today, after some extra tests to make 100% sure everything is fine.

    This is a major update and will bring the editor experience to a whole new level.

    Thanks everyone for the support and suggestions in this first release, it has really helped a lot to shape the pack to the best.
     
    MarcusWatson likes this.
  50. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,358
    [​IMG]
    [​IMG]
    [​IMG]
    [​IMG]
    [​IMG]
    [​IMG]

    Some more pics from the demo. The v1.2 of the pack will be submitted on the store tomorrow and will bring many major enchancements, like much faster Unity Editor grass painting and previewing, object follow mode, new brushes, two more LOD stages (3 total) and many more enchancements.

    I will also upload the whole pack in dropbox and send the link in PM and for anyone intersted.