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. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice

Nature Renderer: Better terrain detail rendering ✅ PBR ✅ Custom Shaders ✅ Shadows ✅ Wind ✅ SRP

Discussion in 'Assets and Asset Store' started by Visual-Design-Cafe, Oct 3, 2019.

  1. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721

    Nature Renderer
    2020: Download on the Asset Store ›
    2021: Download on our website ›

    Render vast amounts of vegetation without slowing down your game.
    Nature Renderer improves the quality of your vegetation rendering by replacing Unity's default terrain details system. Everything works with your existing data: use the same grass, vegetation, and trees and keep your existing terrains. We just level-up your renderer.

    Supports all platforms and all render pipelines
    The correct assets are automatically imported into your project. More details and an exact list of supported versions are at the end of the description.

    One-click install
    Just add the Nature Renderer component to your terrain and everything works instantly.

    WebsiteQuickStartDocumentationTwitter

    FEATURES
    ―――

    Physically Based Rendering
    Get accurate lighting and more detail on your grass, vegetation, and terrain details. You can use full PBR shaders on your detail objects. Such as the Standard Shader or any other.

    LOD
    Use Level-of-Detail on your terrain detail objects to reduce complexity in the distance and increase performance.

    Shadows
    Enable shadows for grass, plants, and other terrain details.

    Wind
    Better wind for your vegetation. The included wind shaders provide accurate and lifelike wind for grass, plants, and trees.

    Custom Shaders
    Use any custom shader for your terrain details to achieve special effects.

    Align to terrain
    Align your grass and objects to the terrain surface. No more floating grass or objects clipping through the terrain.

    Familiar Tools
    Use Unity's default terrain, detail, and tree editing tools. No need to change your workflow.

    Live Editing
    Results show both in edit-mode and at runtime. And all changes to your terrain are updated immediately.

    Additional features
    • Fully multi-threaded for best performance.
    • Fade out vegetation in the distance.
    • Efficient culling of vegetation.
    • Works with multiple terrains.
    • Minimal GC Allocations and stable consistent performance.
    • Works with multiple cameras.
    • Floating Origin support for large worlds.
    • All data is compressed for optimal memory usage.
    • Easily disable rendering when a player is indoors or can't see the terrain.
    Comes with Nature Shaders Essentials
    Includes a collection of essential vegetation shaders that enable Wind Animations, Translucency, Color Variations, and more.


    Now Available:
    2020: Download on the Asset Store ›
    2021: Download on our website ›
     
    Last edited: Mar 17, 2022
    neutron9, TeagansDad, Alverik and 8 others like this.
  2. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Reserved
     
    Last edited: Nov 7, 2020
    Alverik likes this.
  3. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
  4. StevenPicard

    StevenPicard

    Joined:
    Mar 7, 2016
    Posts:
    855
    Looks very interesting. How much of a frame rate increase have you seen using this?
     
  5. jjejj87

    jjejj87

    Joined:
    Feb 2, 2013
    Posts:
    1,110
    Is there HDRP support?
     
  6. dirtybassett

    dirtybassett

    Joined:
    Oct 3, 2012
    Posts:
    59
    Does it work on mobile?
     
    Lars-Steenhoff likes this.
  7. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    It depends a bit on the settings you use, but as an example, the scene from the video at the top gives the following results:
    • Nature Renderer: 60-70 FPS. (With full PBR shaders and high-resolution shadows for all grass.)
    • Unity: 40 FPS. (With a basic shader, no shadows, and a reduced density. Unity has a vertex limit so it couldn't handle the density).
    Edit: Some additional specs:
    Resolution: 2560 x 1080
    NVIDIA GeForce GTX 1060
    Using 2x MSAA
     
    Last edited: Oct 4, 2019
  8. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Yes. HDRP is supported straight out of the box.
     
  9. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Yes. You just have to make sure that the minimum system requirements for GPU Instancing are met.
    GPU Instancing is available on the following platforms and APIs:
    • DirectX 11 and DirectX 12 on Windows
    • OpenGL Core 4.1+/ES3.0+ on Windows, macOS, Linux, iOS and Android
    • Metal on macOS and iOS
    • Vulkan on Windows, Linux and Android
    • PlayStation 4 and Xbox One
    • WebGL (requires WebGL 2.0 API)
     
    Alverik and Lars-Steenhoff like this.
  10. StevenPicard

    StevenPicard

    Joined:
    Mar 7, 2016
    Posts:
    855
    Sounds good. I am assuming VR isn't be an issue?
     
  11. jjejj87

    jjejj87

    Joined:
    Feb 2, 2013
    Posts:
    1,110
    just subscribed. Really excited about HDRP support!
     
    Visual-Design-Cafe likes this.
  12. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    VR shouldn't be an issue, although I haven't had the chance to directly test it on a VR device yet.
     
  13. jjejj87

    jjejj87

    Joined:
    Feb 2, 2013
    Posts:
    1,110
    Could we get more realistic scenes rather than stylized? I would love to see how it comes out.

    Thanks!
     
  14. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,478
    What about seasons? snow / wetness
     
  15. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    I don't have any specific demo scene for a realistic style, but I just put together a few assets from the Book of the Dead in a new HDRP project so you can get an impression of the results. You should be able to get much better results if you put a bit more effort into setting up the lighting/render settings/materials.

    Also, I noticed a few issues with the HDRP version that I am fixing now. So full HDRP support might be pushed back a few days after launch with version 1.1

    Nature-Renderer-HDRP-Book-of-the-Dead-Test-Scaled.jpg
     
  16. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Not supported by default. But you can add it quite easily because Nature Renderer supports the use of custom shaders. So you can download any existing snow/wetness solution and use it with Nature Renderer.
     
    Lars-Steenhoff likes this.
  17. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,478
    I hope it can work together with Map magic 2, that would be great great render with map magic placement

     
    Last edited: Oct 9, 2019
    Haxel0rd likes this.
  18. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    I just gave it a try with the evaluation version of Map Magic and looks like it works without any problems. Just add the Nature Renderer component to your terrain and disable Map Magic's terrain detail rendering and everything works.
     
  19. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,478
    That is great to hear!
     
  20. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    I am happy to announce that Nature Renderer is now available on the Asset Store!
    Download for free on the Asset Store ›

    Please let me know if you have any feedback or questions after downloading Nature Renderer!
    (And a new update with full HDRP support and LOD is coming soon)
     
    Alverik and Mauri like this.
  21. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,478
    Great news, one question is Universal render pipeline support also on the roadmap?

    thanks
     
  22. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Yes, it is. Nature Renderer itself should already work, but I still have to port the wind shaders.
     
    Lars-Steenhoff likes this.
  23. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,478
    Fantastic, and all for free ! thank you for making this
     
  24. PROTOFACTOR_Inc

    PROTOFACTOR_Inc

    Joined:
    Nov 15, 2009
    Posts:
    4,029
    I guess I was the first to leave a review. This is exactly what I would have expected from unity to do... AGES AGO!!!.... thanks for doing this. I would have gladly paid for that, just so you know :)
     
    SickaGamer and Lars-Steenhoff like this.
  25. SickaGamer

    SickaGamer

    Joined:
    Jan 15, 2018
    Posts:
    1,265
    He can trade ya for your characters
     
  26. jjejj87

    jjejj87

    Joined:
    Feb 2, 2013
    Posts:
    1,110
    Just waiting for HDRP support :)
     
  27. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,478
    Its already supported
     
  28. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Thank you! I am glad to hear that you like Nature Renderer :) If you want to help support us please consider sharing on social media and/or checking out Open World Nature Kit. That way we can keep Nature Renderer free.
     
  29. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Full support is coming with version 1.1 (although you can mostly get it working with the current version)

    Looks like it will be ready by the end of the week. Plus maybe a few days until the update is live on the store. (Let me know if you want to give it a try earlier and I can send you a preview version)
     
  30. jjejj87

    jjejj87

    Joined:
    Feb 2, 2013
    Posts:
    1,110
    I've just tried the version on Asset Store and it seems like it is giving dll errors...I am assuming this will be resolved when 1.1 is released so I will keep an eye out for this asset until then.

    Also, it seems like there is a paid version, or a more complete version that includes this asset, can I safely assume that this will also support HDRP?

    Either way, thanks for the great asset, the description alone is promising!
     
  31. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Yes, the errors should be resolved. I have just uploaded version 1.1 with support for HDRP, LWRP, and URP. It should be available within the next few days.

    And yes, the paid asset also supports HDRP. (It is a collection of models and shaders to build your world, so it is a separate asset and not a variation of Nature Renderer. Just to clarify) I'll be uploading LWRP and URP versions for that one as well in the next few days.
     
    Lars-Steenhoff likes this.
  32. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,478
    I would like to set the detail distance to a higher value than 150, can you enable this?
     
  33. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,478
    A test scene

    nature.jpg
     
    URPian, Alverik, TeagansDad and 3 others like this.
  34. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    I'll see if I can change it. 150 was Unity's limit but it shouldn't be an issue to change it I think.

    Looking good!
     
  35. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Version 1.1.0 has just been published with full support for the High-Definition Render Pipeline (HDRP), Lightweight Render Pipeline (LWRP), and Universal Render Pipeline (URP). As well as full Level-of-Detail (LOD) support for terrain details. You can download the latest version from the Asset Store or from the menu in Unity:
    Window > Nature Renderer > Check for Updates
     
  36. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,478
    Great news!
     
  37. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,478
    I got one error, I can click it away, but I'm not sure what it is for
    I'm on a Mac, with unity 2018.4.11f1 default render pipeline

    Screenshot 2019-10-23 at 18.29.33.png
     
  38. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Thank you for reporting this error. It looks like it is a small error that occurs when changing the prefab of a detail object that does not have LOD. It is safe to ignore for now and I'll upload a patch soon. You should be able to make the error go away by re-opening the scene.
     
  39. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,478
  40. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Version 1.1.1 has just been published. You can update by going to:
    Window > Nature Renderer > Check for Updates

    The new version will be live on the Asset Store within a few days (probably after the weekend). It is recommended to update through the built-in updater as it will download the correct assets for your render pipeline.

    Changes:

    • Density now matches with Unity’s default detail density.
    • You can now use the density slider in the terrain settings to increase/decrease detail density.
    • Fixed a NullReferenceException when changing the prefab of a detail object. (@Lars-Steenhoff this should fix your error)
    • Fixed an exception when GPU Instancing is not enabled for a material.
    • Increased maximum detail rendering distance to 350. (@Lars-Steenhoff as requested :) )
    • Fixed issue where painting details in HDRP would disappear if the target strength was less than 1.
     
  41. Firlefanz73

    Firlefanz73

    Joined:
    Apr 2, 2015
    Posts:
    1,300
    Hello,

    you once made a shader version of the grass shader that I could use for my grass tiles which were in a texture Atlas.
    Thanks again for that, it was a great help ::)
    Is it already included in the asset no, or as I believe it is not, could you also update it and in my personal opinion it should be in the asset, too?

    Thanks a lot! Great asset :cool:
     
  42. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    It does not include the exact same shader, but you should be able to get a similar effect by choosing the 'Grass' shader and then setting the 'Wind Control' property to '(Vertex) Position'.
     
    Firlefanz73 likes this.
  43. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,478
    I'm trying it out on iOS , but it seems like its not showing the light on the grass. Can you confirm a check on iOS?

    GfxDevice: creating device client; threaded=1

    Initializing Metal device caps: Apple A10 GPU

    Initialize engine version: 2018.4.11f1 (7098af2f11ea)

    2019-10-27 00:05:53.028149+0200 fly2[358:13038] Unbalanced calls to begin/end appearance transitions for <SplashScreenController: 0x109b42ed0>.

    WARNING: Shader Unsupported: 'Hidden/Nature/Terrain/Utilities' - All passes removed

    ERROR: Shader Shader is not supported on this GPU (none of subshaders/fallbacks are suitable)WARNING: Shader Unsupported: 'Hidden/Nature/Terrain/Utilities' - Setting to default shader.

    UnloadTime: 0.618375 ms

    InControl (version 1.7.4 build 9343)

    InControl.InControlManager:OnEnable()


    (Filename: ./Runtime/Export/Debug.bindings.h Line: 45)


    ArgumentNullException: Value cannot be null.

    Parameter name: shader

    at VisualDesignCafe.Rendering.Nature.MeshGenerator.CreateGrassMaterial (UnityEngine.Texture texture) [0x00000] in <00000000000000000000000000000000>:0

    at VisualDesignCafe.Rendering.Nature.DetailPrototypeCache.CopyFrom (UnityEngine.DetailPrototype detail, System.Single fieldOfView, System.Boolean& flushEverything) [0x00000] in <00000000000000000000000000000000>:0

    at VisualDesignCafe.Rendering.Nature.TerrainDataCache.CopyDetailPrototypeFrom (UnityEngine.TerrainData data, System.Int32 layer) [0x00000] in <00000000000000000000000000000000>:0

    at VisualDesignCafe.Rendering.Nature.TerrainDataCache.CopyFrom (UnityEngine.Terrain terrain, System.Boolean& flushEverything) [0x00000] in <00000000000000000000000000000000>:0

    at VisualDesignCafe.Rendering.Nature.TerrainCells.RebuildTerrainData (System.Boolean& flushEverything) [0x00000] in <00000000000000000000000000000000>:0

    at VisualDesignCafe.Rendering.Nature.NatureRenderer.Initialize () [0x00000] in <00000000000000000000000000000000>:0

    at VisualDesignCafe.Rendering.Nature.NatureRenderer.Awake () [0x00000] in <00000000000000000000000000000000>:0


    (Filename: currently not available on il2cpp Line: -1)
     
  44. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Can you share a screenshot of the issue and let me know the following details:
    - Which render pipeline are you using?
    - Which shader are you using for the grass?
    - Which device are you using?

    I just doubled checked and everything looks fine on iOS here. Tested with the demo scene that comes with Nature Renderer on an iPhone X.
     
  45. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,478
    - Default renderpipeline ( metal )
    - Did not change the shader, just opened the demo scene from nature renderer
    - iPhone 7 plus
    - Unity 2018.4.11.f1 on Mac

    Do I need to change the shader somehow ?

    WARNING: Shader Unsupported: 'Hidden/Nature/Terrain/Utilities' - All passes removed

    ERROR: Shader Shader is not supported on this GPU (none of subshaders/fallbacks are suitable)WARNING: Shader Unsupported: 'Hidden/Nature/Terrain/Utilities' - Setting to default shader.
     
  46. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,478
    Feature request: touch bending for grass and foliage
     
    Tzirrit, dsilverthorn and transat like this.
  47. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,478
    For map magic integration, It only works on the first generated terrain and the script needs to be copied to newly runtime generated terrains. I don't yet know how to do this.

    Normally you can add a script to the mapmagic game object and it will copy to the new terrains, but because nature renderer automatically adds a terrain too, this is not working.
     
  48. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    I am not familiar enough with MapMagic to have an immediate answer for you here, but I'll look into it.
    Nature Renderer requires a Terrain component to be on the Game Object because it needs the terrain data to render your vegetation. Does Map Magic spawn new terrains at runtime, and do these not have Terrain components?
     
  49. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,478
    Yes it spawns new terrains at runtime, and the only thing needed it that those spawned terrains also use nature renderer. yes they have terrain components.

    just the main mapmagic script does not have a terrian component, but its children have.
     
  50. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    I'll see if I can modify Nature Renderer to not require a Terrain component. In the meantime, can you try adding a Terrain component and a Nature Renderer component to the MapMagic Game Object and then disabling the Terrain component? Maybe having a dummy (disabled) terrain component will get around this issue.