Search Unity

[Released] Vegetation Studio Pro

Discussion in 'Assets and Asset Store' started by LennartJohansen, Jun 29, 2018.

  1. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,296
    Didn't show any effect for me. 2019.1.0b3 with PP 2.1.3 and HDRP 5.3.1 that is.
     
  2. sarum

    sarum

    Joined:
    Mar 2, 2014
    Posts:
    212
    i have not tried yet 2019 .. i am using 2018.3.0f2 .. works fine there after update in package manager .. my current setup is HDRP 4.6.0 and Post Processing 2.1.2
     
    Last edited: Feb 25, 2019
    Rowlan likes this.
  3. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,296
    Just seen the latest Brackeys video on HDRP. Seems indeed that what I tried was the future way for HDRP, current one in 2018.3 works like you mention. I updated my post with the version.

    Can't wait for VS Pro to get HDRP support. But since the shader stuff changed again, I guess we'll have to wait a while longer :)
     
    sarum likes this.
  4. SickaGames1

    SickaGames1

    Joined:
    Jan 15, 2018
    Posts:
    1,270
  5. sylon

    sylon

    Joined:
    Mar 5, 2017
    Posts:
    246
    Hi.
    Finally got some time to try out Pro. Just wonderful product. Impressive.
    Something i can't figure out though..
    I am looking into a way to tint my terrain grass according to the lightmaps(shadows) on my terrains.
    Is there an option i am not seeing?
     
  6. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,296
    The Meadow Environment update was released this week and I got to check out ProRoad. I thought I'd combine those two and mod the Meadow Environment demo scene to use Vegetation Studio Pro. I wouldn't want to miss the dynamic and flexible vegetation placement anymore, so VS Pro Biomes it was. In case anyone wants to see how quickly you can turn a scene into a car racing scene, here you go:



    ps: I wanted to make a timelapse vid, but it was so quickly done, so I skipped that part and kept it realtime. The time that took the longest was loading the assets from the store, I left that part out for your convenience :D Assets used are in the descripton of the video.
     
    Virtuadreamer and ftejada like this.
  7. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,296
    People wanted to see more of the driving since it fell too short in above video. I created a new scenery which is bigger now. Was super easy to do with World Creator 2. And adding the biomes is just a blast and very quick and easy to do:



    HInt about the grass distance: It's beneficial to plant a small forest every now and then to camouflage the distance limit ;)
     
    Dwight_Everhart and ftejada like this.
  8. sordidlist

    sordidlist

    Joined:
    Sep 2, 2012
    Posts:
    86
    Looks awesome! Haven't tried World Creator 2 yet but maybe I'll have to!

    Out of curiosity, do you (or anyone really) know if it's possible to use the Meadows Environment asset with Touch React? I swear I thought it was just a matter of having the textures and that VSPro does the rest but for my life I can't get Touch React to work with the Meadows stuff. I've followed the user guide as closely as I can, even made the grass with the grass patch generator to apply the right shaders. I checked the layer number, made sure the components were all added... not sure what I'm missing!
     
  9. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,296
    Yes, the latest version (update of this week) supports Touch React
     
  10. tredpro

    tredpro

    Joined:
    Nov 18, 2013
    Posts:
    515

    Is there a way to add the feature to the roads provided with windridge? I do own easyroads pro already
     
  11. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    Easy roads 3D can make VegetationMaskLines of roads, but only when created. Not for finished roads. You can manually add nodes to existing roads.

    Lennart
     
  12. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,296
    I made an example scene for you to show how it looks like:

     
  13. cygnusprojects

    cygnusprojects

    Joined:
    Mar 13, 2011
    Posts:
    767
    Hi @Rowlan, nice! You'll should check your car afterwards though, sounds like you lost your groundplate and other pieces of it. :p
     
    Rowlan likes this.
  14. sylon

    sylon

    Joined:
    Mar 5, 2017
    Posts:
    246
    Hi.

    I am looking for some documentation of the Vegetation Studio API.
    I need to add a camera to the system during runtime.
    Thanks
     
  15. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    You can call AddCamera on the VegetationSystemPro component or on the VegetationStudioManager.
    The VegetationStudioManager static functions exposed for easy use.

    Lennart
     
  16. sylon

    sylon

    Joined:
    Mar 5, 2017
    Posts:
    246
    I am struggling to find the correct syntax. Could you give me a simple example?
     
  17. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    in the top of the file:

    Code (csharp):
    1.  
    2. using AwesomeTechnologies.VegetationStudio;
    3.  
    then call.

    Code (csharp):
    1.  
    2. VegetationStudioManager.AddCamera(yourCamera);
    3.  
    where you want to add the camera.

    Lennart
     
  18. sylon

    sylon

    Joined:
    Mar 5, 2017
    Posts:
    246
    Thank you Lennart.
    My camera now shows up in the list.

    I am using this camera for planar reflections.
    My trees are not rendering yet though.
    I'll keep trying.
     
  19. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    If you could join the discord server and message me there I can help you set up.
    Easier with a text chat.

    Link in my signature.
     
  20. Shadowing

    Shadowing

    Joined:
    Jan 29, 2015
    Posts:
    1,648
    The wind settings on Vegetation studio component doesn't effect my Wind speed for my trees.
    I have to manually set the setting on the Wind Zone component.

    Also wind only shows on trees during run time.
    Using the trees that come with GAIA. which are speed tree.

    No issues with grass. Grass has wind during and not during run time and vegetation controls works fine for it.


    Also how do I increase the time that grass stays laid down before going back up to normal?
     
  21. SickaGames1

    SickaGames1

    Joined:
    Jan 15, 2018
    Posts:
    1,270
    Any new feature coming out soon?
     
  22. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    Hi. Speedtrees has their own wind that it gets directly from the WindZone. Every shader has its own wind implementation. Some of them are controlable with the wind speed factor on the Environment tab but not speedtree. This is contolled internally with Unity.

    Speedtree wind also has to be "sampled" and injected in the material property block. This is only done run-time.

    For the grass I guess you are talking about the touch react. When the collider is moved the vertex moves back to its original position the next frame.

    To keep down the grass a longer time for wheel tracks etc you can use trail renderers on the wheels. Set them to the same layer as the touch react system (default 29) exclude that from your camera and add the included touch react material to the trail renderer. This way it will keep down until the trail renderer times out.

    Lennart
     
  23. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    Hi. I am working on some prototype features. I will tell more when they are ready and I know how they end out.

    Lennart
     
  24. Waterlane

    Waterlane

    Joined:
    Mar 13, 2015
    Posts:
    188
    Cool - Did you see my questions btw (at the top of this page)? :)
     
  25. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    Hi. Sorry. missed the post.

    1. You can not change run-time spawned instances except for masking them out with Vegetation masks. If you want indivudual access you need to bake to the storage.

    2. Painted assets you can edit with the edit and paint tab on the persistent storage component. Trees and rocks gets up normal handles to move and rotate. You can also access items with the API. Look in VegetationStudioManager_EditorAPI.cs

    3. There is only partial support for the SRPs. The render loop and scattering works but the billboards, heatmap and included grass shader does not.

    I started making some custom nodes for the shader graph. Look here but unity removed the API for custom nodes and have not released the new yet. these only work on HD/LW 4.2

    When the API is done I want to experiment a bit with creating the billboards with custom nodes to get the lighting using the graph.

    Lennart
     
  26. Waterlane

    Waterlane

    Joined:
    Mar 13, 2015
    Posts:
    188
    Thanks very much - Very useful information... :)
     
  27. tredpro

    tredpro

    Joined:
    Nov 18, 2013
    Posts:
    515
    How do you set up an item to be placed under sea level. It appears adjust height on does so from sea level up
     
  28. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    Hi. You can set negative values in the heigth rules -50 to 0 will spawn from sea level to -50 meter.

    Lennart
     
  29. tredpro

    tredpro

    Joined:
    Nov 18, 2013
    Posts:
    515
    Oh. My bad. I didn't even try negative because of the bar looking like 0 being as far over as it could go. I guess that's what I get for assuming. Thann you so much
     
  30. kepesh

    kepesh

    Joined:
    Dec 29, 2017
    Posts:
    92
    I'm thinking about trying to upgrade to 2018.3 again so I can use VS pro.
    Is there any known bugs that might break builds or other bugs? I'm using VS now, not pro.
     
  31. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    There is a IL2CPP compiler bug with Jobs. That has been fixed by Unity but did not hit any release yet.
    I did not get any other major 2018.3 issues reported with VS Pro.

    Lennart
     
  32. GamePowerNetwork

    GamePowerNetwork

    Joined:
    Sep 23, 2012
    Posts:
    257
    Hello! I just want to start off by saying, I love VS Pro!

    I am banging my head on one issue however. I love using Gaia's built in splat map feature and CTS with it. This works perfectly with VS Pro... however I want to use VS Pro's biomes masking feature to paint textures under certain biomes while still maintaining the rest of the textures that Gaia painted.

    Is that possible? I'm having a hard time using VS Pro's texturing feature with the curve graphs for height and steepness and my splatmaps come out looking horrible, so it would be awesome to use the best of both worlds.
     
    Flurgle and Lars-Steenhoff like this.
  33. Rowlan

    Rowlan

    Joined:
    Aug 4, 2016
    Posts:
    4,296
    Vegetation Studio Pro Biomes & Enviro Weather Zones is a very good combination imo :)

     
    GamePowerNetwork and Flurgle like this.
  34. maskonur

    maskonur

    Joined:
    Feb 4, 2014
    Posts:
    1
    Hello,

    I have a question, does Vegetation Studio Pro assets/prefabs (especially plants) will work with basic Vegetation Studio system on Unity 2018.1.9f2?
     
  35. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    Yes it should work good. In Vegetaton Studio Pro some shaders has extra functionality exposed in the GUI using the new ShaderController system, but basic rendering will work as long as the shaders support instancing.

    Lennart
     
  36. larsbertram1

    larsbertram1

    Joined:
    Oct 7, 2008
    Posts:
    6,902
    hi lennart,

    i got this request regarding cti trees in vs pro:
    Would it be possible to disable some features of CTI for a "light" version, for lesser hardware? Our trees look fantastic but have ended up being too heavy for mid-range and lower hardware...​
    and:
    Okay. So those features are Leaf Turbulance and Animate Normal: Normal Rotation? Would enabling Fade Out Translucency help too? And can we disable those at runtime (based on quality levels), or do we need to make an alternate material?
    And with VSP, you'd recommend not choosing Indirect Instanced?​

    actually optimizing the cti vertex shaders only saves some frames here and there. really expensive on the gpu are:
    - rendering all trees at pretty high lods into the shadow cascades using Indirect Instanced including all the overdraw.
    - not using shadow caster proxies.

    so i would recommend to:
    - allow to declare shadow caster proxies - like using always lod2 or lod3 when it comes to shadows.
    - support low res shadow caster textures for the leaves to save bandwidth – at least when it comes to deferred.
    - cull shadow casters against the frustum of the directional light properly.

    all savings on the cpu are fine – but may simply stress the gpu.
     
    ftejada, hippocoder and gecko like this.
  37. gecko

    gecko

    Joined:
    Aug 10, 2006
    Posts:
    2,241
    Thanks, Lars. Lennart, we would love to have an option for low-poly shadow castors! We're very much GPU-bound.
     
  38. larsbertram1

    larsbertram1

    Joined:
    Oct 7, 2008
    Posts:
    6,902
    i tried to protect your privacy...
     
    gecko likes this.
  39. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    It's the best for creating terrains from nothing in procedural fashion that I've used so far. It can do splatting too but we are going to use VSP for that, I think.
     
  40. GamePowerNetwork

    GamePowerNetwork

    Joined:
    Sep 23, 2012
    Posts:
    257
    Are Beacons working properly on meshes? I placed a beacon on just one small section of a plane ... but the effect of the beacon covered the entire plane. When I switch back to terrain, it works fine.
     
  41. GamePowerNetwork

    GamePowerNetwork

    Joined:
    Sep 23, 2012
    Posts:
    257
    I've taken a screenshot to give a bit more background of what's happening on Mesh terrain. In the photo attached, the red flowers are only supposed to be rendered within the mask.. however it renders them in a perfect square even outside of the mask (no matter the shape). When I switch back to Unity terrain, this works fine.
    2019-03-13.png
     
  42. prizedgoat

    prizedgoat

    Joined:
    Dec 22, 2017
    Posts:
    41
    i loved seeing the tool in the store sale on front page! its 30% off, i have been intending to buy it!!! oh wait... no its not 30% off because they raised the price by $15 at the exact same time as they put it on sale.... its actually only 15% after the false adjustment... still better then nothing but not cool playing pricing games with people. tisk tisk
     
  43. empirebattles

    empirebattles

    Joined:
    May 17, 2013
    Posts:
    19
    is there any easy way to integrate with voxeland? Right now, i'm in testing, and it looks like i just create a terrain data file on each voxeland chunk... and add that to vegetation studio pro...

    i cant get it to consistently do what i need... so i'm asking here if anyone's done this or not :)
     
    Last edited: Mar 16, 2019
  44. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    Hi. I do not know of any mask bug with the mesh terrain but I will test and see what I can find out.

    Lennart
     
  45. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    Hi. Have you tried the Raycast terrain component. Using the collider of voxeland as a terrain?
     
  46. LennartJohansen

    LennartJohansen

    Joined:
    Dec 1, 2014
    Posts:
    2,394
    Hi. There was no price adjustment for Vegetation Studio. Did you maybe have the plus/pro discounted price before? Only the highest discount works. they do not stack.

    Lennart
     
  47. empirebattles

    empirebattles

    Joined:
    May 17, 2013
    Posts:
    19
    I got the raycast to allow for VSP to generate stuff on the terrain.
    Am I correct in assuming though, that because its using raycast for collision, it is not going to allow me to utilize things such as the texture on the terrain to dictate generation rates and such?


    I'm playing with it, and its looking like no matter how i try to get the voxeland terrain to be read into VSP (whether by mesh terrain or raycast), I cant get VPS to see the textures in use.... unless i'm just missing something obvious XD I figure i'll keep playing with it to see if i can get it to do what i want after i get some sleep, but i wanted to follow up on here first :)
     
    EnriquePage91 likes this.
  48. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Hi,

    I spoke with Kink on Discord and he threw together a HDRP node with the following instructions. I've kind of got something going but there's still a few issues. Any advice is welcome:

    "in a .hlsl file"
    Code (CSharp):
    1. #pragma instancing_options renderinglayer procedural:setupVSPro
    2.     #ifdef UNITY_PROCEDURAL_INSTANCING_ENABLED
    3.         struct IndirectShaderData
    4.         {
    5.             float4x4 PositionMatrix;
    6.             float4x4 InversePositionMatrix;
    7.             float4 ControlData;
    8.         };
    9.         #if defined(SHADER_API_GLCORE) || defined(SHADER_API_D3D11) || defined(SHADER_API_GLES3) || defined(SHADER_API_METAL) || defined(SHADER_API_VULKAN) || defined(SHADER_API_PSSL) || defined(SHADER_API_XBOXONE)
    10.             uniform StructuredBuffer<IndirectShaderData> VisibleShaderDataBuffer;
    11.         #endif  
    12.     #endif
    13.     void setupVSPro()
    14.     {
    15.     #define unity_ObjectToWorld unity_ObjectToWorld
    16.     #define unity_WorldToObject unity_WorldToObject
    17.     #ifdef UNITY_PROCEDURAL_INSTANCING_ENABLED
    18.             unity_LODFade = VisibleShaderDataBuffer[unity_InstanceID].ControlData;
    19.             unity_ObjectToWorld = VisibleShaderDataBuffer[unity_InstanceID].PositionMatrix;
    20.             unity_WorldToObject = VisibleShaderDataBuffer[unity_InstanceID].InversePositionMatrix;
    21.     #endif
    22.     }
    "then add a function:"
    Code (csharp):
    1.  
    2. void PositionPassthroughHD_float (float3 In, out float3 Out)
    3. {
    4.     Out = In;
    5. }
    6.  
    "then in File mode use PositionPasthroughHD as function name and reference to the .hlsl"

    Haven't had much luck so far but I thought I'd share regardless. I didn't want to hassle Kink as he's busy with GDC.
     
    Rowlan likes this.
  49. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    I see, just needed to add func to the hlsl file and then some inputs and outputs.
     
  50. Lymdun

    Lymdun

    Joined:
    Jan 1, 2017
    Posts:
    46
    Hello,

    Is there a way (like Vegetation Studio) to import trees from Terrain?