Search Unity

  1. Get all the Unite Berlin 2018 news on the blog.
    Dismiss Notice
  2. Unity 2018.2 has arrived! Read about it here.
    Dismiss Notice
  3. Improve your Unity skills with a certified instructor in a private, interactive classroom. Learn more.
    Dismiss Notice
  4. ARCore is out of developer preview! Read about it here.
    Dismiss Notice
  5. Magic Leap’s Lumin SDK Technical Preview for Unity lets you get started creating content for Magic Leap One™. Find more information on our blog!
    Dismiss Notice
  6. Want to see the most recent patch releases? Take a peek at the patch release page.
    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. TehReason

    TehReason

    Joined:
    May 14, 2013
    Posts:
    49
    any news? :)
     
  2. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,879
    Hi,

    The spline system is done, so this is out of the way.

    I have finished most things now, and doing a final step of creating a brush generator, this will take the items and auto-create a brush, also it can take a Speedtree and do auto conversion as well. This is one extra step i had to do after lots of feedback about it, so it is easier to put together brushes and control them.

    Also will have to look a bit more in Map Magic integration, but this may come later in v2.x cycle to speed the initial release, as it is a special case.
     
    XaloX likes this.
  3. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,879
    A Unity 2018 version is ready for download, for everyone that may use the latest version.

    Let me know in a PM if the 2018 version is needed.

    The Unity 2018 version will also be submitted to the store this week (WIP).
     
  4. pxlweaver

    pxlweaver

    Joined:
    Dec 21, 2012
    Posts:
    76
    Any word on beta?
     
  5. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,879
    I am working around the clock to finalize it now, only thing missing is the brush creator which i am doing now and hopefully will soon have it released. I decided to add this aspect too, since was a common issue with v1.x that was asked, so i will streamline the creation of brush and put together LODs etc easilly, so the brush generation will be more automated and clear.
     
    pxlweaver and Acissathar like this.
  6. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,879



    Circular wind and snow are now integrated into the new v2.0 shaders and are tweaked (WIP). Also both will get many more options for more control over the effects.
     
    sharkapps likes this.
  7. malkere

    malkere

    Joined:
    Dec 6, 2013
    Posts:
    856
    Are there any runtime procedural methods included with InfiniGRASS? MapMagic integration or rule based automatic placement for example?
     
  8. Ruben_Chris

    Ruben_Chris

    Joined:
    Mar 10, 2013
    Posts:
    69
    @nasos_333 Hello! I bought InfiniGRASS a couple of days ago and I'm impressed by the system so far. However, there are a few things that I would like to bring up.

    Performance issues
    1. Editor is lagging a lot when I start drawing grass unless I click the "Ungrow in editor" button. I don't need to see the grass wave in the wind when in the editor. Is there a way to fix this without hitting the "ungrow in editor" button all the time? "Toggle Wind" and "Preview wind in editor" are both set to false, but I can still see the effect.
    2. When I add stones using the "Stones (with LODs)" brush, my vertex count goes up by hundreds of thousands of verticies which (of course) results in massive lag.

    There also seems to be an issue where parts of grass are "stretched" and doesn't appear to be in the right place. Provided a picture below:

    It seems to appear when I move away from the grass
     
    Last edited: Jul 8, 2018
  9. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,879
    Hi Chris,

    The editor performance is an issue, i handle it by using multiple grass managers and "ungrow" each i dont edit and work only on one, also you can use the view editor distance to eliminate grass further from the editor camera to enchance speed more. In infiniGRASS v2.0 the editor performance is vastly improved due to the pooling and no batching need and more efficient RAM usuage.

    The brushes besides quads (main grass type) can be expensive in polygons, so try to use more sparse configuration (reduce density in brush and increase spread to cover more space).

    For the grass displacement, try to reduce the "stop motion distance" variable to zero and see if fixes it, this is per brush setting in the shader, so first select the brush with the icon and then set it.
     
  10. Ruben_Chris

    Ruben_Chris

    Joined:
    Mar 10, 2013
    Posts:
    69
    Thanks for the quick response!
    I managed to fix the grass displacement problem, but I noticed that InfiniGRASS seems to use a lot of my CPU power. In the profiler, INfiniDyGrassField.Update() stands for 8.2% of the usage, GrassChopCollider.Update() stands for 5%, InfiniGRASSManager.Update() stands for 2.5%. In addition to this, ControlCombineChildrenINfiniDyGrass.LateUpdate() eats up 16.6% and INfiniDyGrassField.LateUpdate() uses 3.6%. In total, InfiniGRASS stands for 39.9% of the CPU consumption. There are around 1000 grass patches, but it doesn't cover that much of my terrain.
    The actual rendering affects the CPU less than the updating of the InfiniGRASS components.

    Also, how do I setup player interaction? I've set the correct tag and checked the "Tag based player" checkbox, but it doesn't seem to affect the grass at all. I've also tried changing the stop motion variable. "Shader based interact" is also checked.

    By the way, I'm looking forward to 2.0 :)
    I have a big terrain, so I need those new features (currently mass planting just crashes my editor).
     
  11. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    6,879
    Try to create larger batch groups by increasing the static members count and batch radius. This will create much less overhead. In v2.0 there is a grid update system and split to many managers so will solve these issues as well automatically with no need to manage the grass on a higher level by the user.
     
  12. Ruben_Chris

    Ruben_Chris

    Joined:
    Mar 10, 2013
    Posts:
    69
    Hi again. I think the problem that I was facing was because the 1000 grass patches was located at pretty much the same place. When I found out how to adjust the brush size, it worked much better haha. Still new to the whole system :)
    I'm glad that problem is fixed. I also managed to fix the player interaction by checking the "Make grass interactive" checkbox in the grass brush, but every time my player walks on the grass, the grass shrinks. It seems to be linked to the interaction radius. When I set a lower interaction radius, the grass shrinks and when I set a higher interaction radius value, the grass grows and becomes enormous. Do you have any idea why this happens?