Search Unity

Question HDRP and Terrain limitations

Discussion in 'High Definition Render Pipeline' started by Bordeaux_Fox, Dec 1, 2020.

  1. Bordeaux_Fox

    Bordeaux_Fox

    Joined:
    Nov 14, 2018
    Posts:
    589
    Hi there,

    I wanted to start a new project with HDRP and need to use Terrain.
    So I got some information about the current state of features.

    Is this really that unusable in terms of needed features in order to achieve photorealistic results?

    1. How can I achieve photorealism in terms of texture variation if the layer limit is just eight? The built-in renderer had unlimited layers, why is HDRP capped to eight layers? Is there any workaround? Why limiting artists and world building? We already have huge variation for rocks, so there would be no room for other types of materials like grass.
    2. How can I achieve even more photorealism and depth if tessellation is not available? Doesn't look terrain without tessellation like last gen graphics? Also what about supporting more textures like detail map?
    3. How I'm supposed to build a terrain without any support for Detail Shaders? So instead of painting grass directly with the Terrain tools, the artists are supposed to do what instead?
     
    nehvaleem likes this.
  2. Ziflin

    Ziflin

    Joined:
    Mar 12, 2013
    Posts:
    132
    I had/have a lot of the same questions. I finally gave up and wrote my own terrain editor to support several things that we need to do that are missing. Hopefully you can get some answers from Unity, because it certainly would have saved us some time to have a functional terrain system with some 'next-gen' capabilities in HDRP land...
     
  3. jjejj87

    jjejj87

    Joined:
    Feb 2, 2013
    Posts:
    1,117
    You are not alone.
     
  4. Bordeaux_Fox

    Bordeaux_Fox

    Joined:
    Nov 14, 2018
    Posts:
    589
    I thought so. Pretty much everyone is complaining about Unity Terrain, especially the missing Detail shaders are just unbelievable. The sculpting tools are pretty enough for my needs. But man, the rendering is so outdated considering HDRP wants to sell AAA graphics. The worst part is that the Terrain rendering is more worse than in the old renderer and I wonder why they going a big step backwards. So why would they cut the amount of layers and detail shader support? Sure I got it, for every missing core engine feature I'm forced to buy an expensive asset or wasting development costs for doing tools programming instead of concentrating on gameplay programming.
     
    merpheus likes this.
  5. logan4179

    logan4179

    Joined:
    Apr 25, 2017
    Posts:
    2
    How can you not paint grass/detail meshes natively with hdrp? That would make HDRP unusable for like...every game that has outdoor environments. Am I missing something? Am I awake or dreaming? Is this considered acceptable because HDRP is new? Have they addressed this and mentioned plans to implement it?

    I don't mean to be dramatic, but I'm literally going through Unreal tutorials at this point.
     
    LukeDawn likes this.
  6. Win3xploder

    Win3xploder

    Joined:
    Dec 5, 2014
    Posts:
    161
    I also find that the environment art tools are greatly lacking. However, with a procedurally generated splatmap you can achieve a nicely varied look on a terrain even with 4 layers. Use high frequent noise to create breakup.

    As for grass, you can use the tree system which is not optimal since you cant make trees align to normals. A workaround is to not place grass on steep slopes.

    I recommend you check out the Book of the Dead for reference.

    Overall I would recommend relying on meshes to create detail and realism instead of trying to do it with flat textures.
     
    Last edited: Jan 1, 2021
  7. LukeDawn

    LukeDawn

    Joined:
    Nov 10, 2016
    Posts:
    404
    Terrains in HDRP really suck. Painfully unperformant, and no details or grass.
     
  8. koirat

    koirat

    Joined:
    Jul 7, 2012
    Posts:
    2,074
    Don't forget that assets stops working on every release.
    For more than a month I have broken Gaia / CTS / RAM / AmplifyShader and probably other that I fortunately decided not to install yet.
     
  9. warthos3399

    warthos3399

    Joined:
    May 11, 2019
    Posts:
    1,759
    I feel your pain, we all do. Theres plenty of ways to work around these probs with terrain. All we can do is let Unity know our thoughts and input, and see what happens...
     
  10. LukeDawn

    LukeDawn

    Joined:
    Nov 10, 2016
    Posts:
    404
    Let's hope they're reading this thread.
     
  11. nehvaleem

    nehvaleem

    Joined:
    Dec 13, 2012
    Posts:
    438
    This is it! Exactly my point. I don't know why development is pretty rapid in other (non as crucial) areas and those things related to the terrain are just left? I mean like... come on! Do we need angle fading decals when we cannot render a decent terrain or place grass? Unreal has S*** way more advanced, and we have like... zero, null, nada. It is not something fancy I think, it is a must-have from my point of view. A game without terrain? Terrain without grass? Come on!
     
  12. sqallpl

    sqallpl

    Joined:
    Oct 22, 2013
    Posts:
    384
    Terrain Master node for shader graph is something that would make many things easier and achievable.

    Or at least a shader graph node/option that could convert normals so the material could be used for terrain with instanced rendering and per pixel normals.
     
    Last edited: Jan 7, 2021
    KYL3R and warthos3399 like this.
  13. DGordon

    DGordon

    Joined:
    Dec 8, 2013
    Posts:
    649
    My guess is, "Terrains now have working grass!" draws less marketing hype than "Now with new feature X", and somehow that equates to more money for their time. I have to imagine after all these years, if there was actually money in fixing this above any number of other things they work on, they would have immediately.

    I mean, either they're too incompetent to figure out how to create a fully featured working terrain system, or they don't think its worth their time. I don't believe for a second they can't figure this out (given all the great stuff they've made, I don't think that terrain is their breaking point as a company), so it must leave the second, right? Which would mean ... money ... somehow is the reason.

    Which of course, should leave us with a bad taste. But its all conjecture, especially given how weird it is without any real feedback!

    My biggest take away is, I wish we had a real valid roadmap these days for what will _really_ be coming down the line in terms of priority features. The why matters much less than the "will we ever get it?", heh.
     
    nehvaleem and Win3xploder like this.
  14. Fer00m

    Fer00m

    Joined:
    Feb 28, 2014
    Posts:
    170
    Unfortunately this workaround isn't ideal when you need to use navmeshes. Any grass placed with tree system will always block navmesh and I couldn't find any way to change that.
     
  15. Win3xploder

    Win3xploder

    Joined:
    Dec 5, 2014
    Posts:
    161
    I didn't know that. That's completely unacceptable

    It kinda works with the navmesh components. It's just that trees dont get picked up at all.
     
    Last edited: Jan 8, 2021
  16. Fer00m

    Fer00m

    Joined:
    Feb 28, 2014
    Posts:
    170
    I think the simplest solution for the grass system that Unity could implement is just to let us easily use whatever shader we want (just like it is the case with trees), instead of forcing some hidden built-in grass shader that we have no control over.
     
  17. nehvaleem

    nehvaleem

    Joined:
    Dec 13, 2012
    Posts:
    438
    Well, there is a workaround but really.. it sucks. Since navmesh is baked you can just remove the grass, bake the navmesh, ctrl+z to restore grass. I don't know if ctrl-z was the solution but it was something as stupid as this when I encountered this problem and I managed to find a workaround something like this.
     
    Rewaken and Fer00m like this.
  18. Fer00m

    Fer00m

    Joined:
    Feb 28, 2014
    Posts:
    170
    Yes, now you reminded me. I did move the folder with all grass meshes out of the project, baked the navmesh, and then moved it back in. Far from ideal.