Search Unity

  1. Unity Asset Manager is now available in public beta. Try it out now and join the conversation here in the forums.
    Dismiss Notice
  2. Unity 6 Preview is now available. To find out what's new, have a look at our Unity 6 Preview blog post.
    Dismiss Notice
  3. Unity is excited to announce that we will be collaborating with TheXPlace for a summer game jam from June 13 - June 19. Learn more.
    Dismiss Notice

Discussion How would default render pipeline benefit from Unity6?

Discussion in 'Unity 6 Beta' started by eiwzkart, Mar 18, 2024.

  1. eiwzkart

    eiwzkart

    Joined:
    Feb 25, 2016
    Posts:
    64
    As we see it looks like most of the graphic performance improvements in Unity 6 are around URP and HDRP, what about default render pipeline?
     
  2. spiney199

    spiney199

    Joined:
    Feb 11, 2021
    Posts:
    8,159
    There's no work being done on the Built in RP as far I understand.
     
  3. soleron

    soleron

    Joined:
    Apr 21, 2013
    Posts:
    623
    I think it is about time teams should either start thinking of transitioning or keep working with old versions of Unity.

    With URP there is not much to do.

    HDRP is a bit tricky but also more powerful and more fully featured than Built In.

    Both URP and HDRP for a while now perform better than Built-In, or at least as good as, depending on the project.
     
  4. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,958
    My hope is they fix some of the regressions they introduced in 2022 for built in so that I can potentially migrate to newer Unity versions at some point.

    Other than that, there is no work being done on it and that's fine. I do wish they would fix the bugs they introduce to it quicker though.
     
    LooperVFX likes this.
  5. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,455
    Dead.jpg
     
    soleron, ElliotB, adamgolden and 2 others like this.
  6. Jonathan-Westfall-8Bits

    Jonathan-Westfall-8Bits

    Joined:
    Sep 17, 2013
    Posts:
    289
    I think I saw starting in Unity 6 the SRP systems will be the default once they make sure Render Graph is foundationally stable. This was announced in the Unity 6 GDC event and there is a video on Unity's YouTube channel from this morning mentioning it.

    For anyone who hasn't seen the video I would watch it. It mentions some stuff people were wondering about and asking questions about.
     
  7. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,958
    Is there a timecode?
     
  8. Lurking-Ninja

    Lurking-Ninja

    Joined:
    Jan 5, 2024
    Posts:
    533


    Starting at 5:40.
     
  9. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,958
    Eh, for a moment there I thought that by default URP would be always included with the Unity installation, but all it probably means is they are changing the default template in the hub, which doesn't really matter.
     
  10. bugfinders

    bugfinders

    Joined:
    Jul 5, 2018
    Posts:
    1,982
    I wouldnt mind urp/hdrp being the only ones left given they're never going to work on the built in, but only when urp is viable for my project and doesn have a raging bug meaning i cant use it. (as a web game maker hrdp is not for me)
     
  11. Jonathan-Westfall-8Bits

    Jonathan-Westfall-8Bits

    Joined:
    Sep 17, 2013
    Posts:
    289
    For web development the main thing for people is the upcoming WebGPU updates. Not sure the complete changes or benefits outside of rendering performance this will bring in certain cases.
     
  12. bugfinders

    bugfinders

    Joined:
    Jul 5, 2018
    Posts:
    1,982
    yeah webgpu is a good and interesting change for us, but also partly relies on urp, and well urp hates apparently dark mazes
     
  13. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,702
    It has been for a while, see "<UNITY_INSTALL_DIR>\Editor\Data\Resources\PackageManager\BuiltInPackages\com.unity.render-pipelines.universal".
     
    soleron likes this.
  14. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,958
    I didn't phrase what I meant very well.

    If you don't have any pipeline related packages installed you fall back to built in and that simple fact makes URP feel optional and tacked on and built in the "base" / "core".

    I was imaging a situation where having no pipeline packages installed means Unity is using URP (maybe I am saying that URP should no longer be a package? or, it could still be a package, but one you can't remove?), and then you would have to do something extra to use built-in if you wanted.

    But maybe it is silly. And maybe I am just negatively predisposed against the package manager (which I am). But it also doesn't help that the way the SRPs are integrated still feels tacked on (to me, I'm fully aware this may be a 100% me thing) but: the choice to have a lot of the settings as scriptable objects is fine, but it also contributes to the feeling of it being in its own little world, because the feature may or may not be there.

    And the way it integrates with core Unity menus also feels tacked on. For example: the quality settings, which is an old menu that really needed to be killed years ago and replaced with something new, now it just awkwardly got some more stuff in it and it makes even less sense than before.

    I guess what I'm trying to say is, for a moment I thought that maybe if URP became "default" in a stronger sense than just it being the default template, a lot of the menus and settings and workflows would be redesigned around it, but if it's still a package, which means it might not be there, then you can't really design your core menus around something that might not be there, you design them around what is always there and have the packages sprinkle bits and pieces here and there <- all of which contribute to it feeling like a second class citizen, and that won't change even if it becomes "default".

    But again, that may be a me thing and my general inability to take any feature that is delivered via package manager seriously.

    Because the package manager is for features you add, use them to do a job, and then instantly uninstall them, because if you leave them around you are looking for trouble. Because obviously Unity doesn't test with them installed, because otherwise how would you explain people being unable to build for iOS for years if the Recorder package was installed (and maybe still to this day? I don't know, I've been trained to install it, use it, then instantly uninstall it).
     
    Last edited: Mar 22, 2024
    krzychuwr1_unity and KamilCSPS like this.
  15. Lurking-Ninja

    Lurking-Ninja

    Joined:
    Jan 5, 2024
    Posts:
    533
    But it has to be convoluted mess with nonsense defaults, because otherwise how would you learn the settings properly? If you don't have to touch it?!
     
    lloydsummers and AcidArrow like this.
  16. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,958
    Yeeaah, I feel like it's one of those situations where Unity takes the wrong lesson, or does a backwards solution. It used to be that many of its tools were easy to start with and had decent defaults -> Unity had the reputation of being super easy to prototype with, until things fell apart as complexity rose.

    And instead of adding more tooling to handle the complexity (or make some of the features more scalable / robust), I guess they are starting by "fixing" the "Unity is easy to prototype with" part, by making every feature a hidden object type game of figuring out where the correct checkboxes are that make a feature start doing something.

    If you told me Unity bought Big Fish and they tasked them with doing editor UI work for them, I could have believed it, it would make sense.
     
  17. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,702
    That totally makes sense. And you're right, it's not default in that way.
     
    mariandev and AcidArrow like this.
  18. boyaregames

    boyaregames

    Joined:
    Jun 23, 2021
    Posts:
    79
    In HDRP there should be someone in your team roster just to operate with this settings
    It is much harder than even making games
     
  19. Enzi

    Enzi

    Joined:
    Jan 28, 2013
    Posts:
    981
    Imagine unified settings for URP/HDRP without clicking through several menus or scriptable objects.
    Yeah ...
     
  20. lloydsummers

    lloydsummers

    Joined:
    May 17, 2013
    Posts:
    359
    I have yet to see a benchmark showing a meaningful improvement (although I've seen a few showing a performance decrease). URP has always come across as a make work project for what is arguably little to no meaningful gain and a high risk or broken shaders... but I recognize I'll need to move things over eventually.
     
    Starburst999 and bart_the_13th like this.
  21. bugfinders

    bugfinders

    Joined:
    Jul 5, 2018
    Posts:
    1,982
    for me its a bit like the difference between metric and imperial, its still the same but you have different tools, different units, different lots of things but at the end the object kinda ends the same.. (Obviously in terms of graphics its not entirely true but its like having to shell out for a whole new tool set cos you had 5/18ths spanner and now need a mm one)
     
  22. lloydsummers

    lloydsummers

    Joined:
    May 17, 2013
    Posts:
    359
    To me, I think if it was done right, it should have automatically scaled from URP to BiRP to HDRP as needed without game developers needing to do anything. It should have been an optional modification for those wanting to go deeper, but otherwise worked no different than a simple quality setting. If someone layers URP and BiRP shaders at a performance cost, who cares, at least it doesnt render a project unusable.

    The fact you need three completely different sets of shaders that can't be used together was just asking for trouble for new learners. Add to that dual input systems, changing the default version control three times, multiplayer base framework two or three times, all while new devs are trying to figure out what package manager is and what packages you need to do basic things like 9 slicing, etc... it starts to undermine its purpose after awhile.

    But I know that's a personal opinion and a conversation for another day :)
     
    Last edited: Mar 25, 2024
  23. Andy-Touch

    Andy-Touch

    A Moon Shaped Bool Unity Legend

    Joined:
    May 5, 2014
    Posts:
    1,503
    My studio is staying on BIRP mostly as Unity 6 doesn't have anything that can justify upgrading to URP that we can't already do. HDRP is still a no-go based on target platform limitations (we need Switch and everyone ive spoken to who has done HDRP for Switch says not to do it :D)

    Unity probably does need to actually do the unification to a single renderer sooner rather than later. Having all graphics resources focus on one renderer would probably convince alot of studios to upgrade.
     
    Piolols, Mori_X, soleron and 8 others like this.
  24. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,455
    Wait, it actually functions? I always assumed the hardware didn't have the capability. :eek:
     
  25. thelebaron

    thelebaron

    Joined:
    Jun 2, 2013
    Posts:
    865
    Is a renderer unification even possible? It’s taken years to get to the point of working on coexistence which has yet to materialize.
     
  26. Slashbot64

    Slashbot64

    Joined:
    Jun 15, 2020
    Posts:
    342
    Just problems with going with URP it's under developed and lacking still, for all the problems you're put through to use it, you're stuck on older versions of Unity due to so many breaking changes on shaders that most asset devs just don't have the time to keep up with the changes. Ironic that you can use BIRP on the latest Unity with alot more assets and not half as many issues. And they broke alot of URP assets again for for what will be Unity 6 and its not well documented or trivial changes to fix, how many more years are they are going to be making these kind of major changes.

    firefox_XcTeKVQ4uq.png

    its disappointing I don't know the reason for the changes probably just stuff that in hindsight they should have decided to do years ago.

    And on comparison of BIRP/URP it looks like... https://docs.unity3d.com/6000.0/Documentation/Manual/render-pipelines-feature-comparison.html

    yet to me URP is missing things that aren't even on that list that can be done in BIRP or at least alot easier, I don't even care for HDRP at this point, other than it shows where alot of the attention to implementing features has gone despite there not really being a huge reason that alot of that stuff couldn't have been added for URP seeing alot are using URP for desktop games where the GPU is alot better than mobile. And Terrain in Unity is so outdated that I can't think of reason to use HDRP and want to battle with Unity's terrain system and dozen third party addons all tied upto making it semi decent and performant. Usually having to use an older version of Unity because of the whole URP/HDRP package versioning, you can never just use a newer Unity release that fixes bugs with an older URP package to avoid the breaking changes. Where those changes break addons and add additional version upgrade costs and delays on waiting for fixes... if you're considering HDRP might aswel consider a different engine entirely, given how far behind Unity are compared to other engines on things in that area its sad. They've bitten off more than they can handle it seems and the years are adding up.

    And switching from BIRP or URP/HDRP for a project is not seamless, fixing imported asset store stuff is not made easy, you can't just select a folder in a project and convert materials/shaders for only stuff in that folder.. no its all a huge hassle to deal with provided tool (unrelated but I still don't get why Unity package import doesn't provide a diff tool ffs) the render material converter and selecting and unselecting materials... its just not good enough to deal with this mess of pipelines and varying locations shaders/materials and different quality settings and asset material imports etc, its like the tool was made for an already existing project, not a project where you're importing assets from the store that need converting from BIRP to URP etc a constant hassle really of URP still imo.

    They should make switching URP/HDRP literally seamless for projects or pick one and make it scale better for all platforms. They've pushed it on developers to decide on 3 render pipelines and to pay for assets and asset upgrades for particular pipelines, just ain't worth the limitations with what can be turned on/off so you can have a project that will build for mobile/low end or high end where you decide what features you want to use. Seeing all more features land for HDRP that I see no reason lot of those things couldn't be on URP, it's asset devs picking up the pieces to fill in the gaps like GI solutions for URP and various other things to improve URP.. frankly the best of URP/HDRP should just be combined into BIRP2.

    And everything to do alpha transparency is rubbish from what I've found with URP, it's like low end quality target were so low that what was possible in BIRP is too much for URP to support out of the box.. they've just not bothered making things that were possible to do with BIRP in URP. And for what, I don't find the performance to be any better with URP project in testing.

    Things like this.... Discord_7i6rkPvOci.png

    a lot of discontent with URP/HDRP is scattered in discord and other places definitely problems that need sorting out. BIRP2... I don't think I'll ever bother HDRP, URP was kind of the new main renderer to go for, but its still like underdog that is way behind where it should be for alot of things.
     
  27. lloydsummers

    lloydsummers

    Joined:
    May 17, 2013
    Posts:
    359
    Same here. With Unity 6 slowly mandating URP though I'm not sure how long we can hang on for though :D
     
  28. jiraphatK

    jiraphatK

    Joined:
    Sep 29, 2018
    Posts:
    306
    Folks, they are not going to create yet another new RP that unifies HDRP and URP together into one.
    I just can't see it happening. That's like a minimum of another 5 years of limbo no one actually wants.

    Let's be realistic here, I think they will make future features more readily portable from hdrp --> urp, make setting/workflow more familiar, that kind of stuff.

    I'm not even a fan of coexistence. Coexistence will absolutely bloat the project to an unplayable laggy state and will make a mess of the project source folder. Oh, and not to mention extra extra extra slow domain reload. no thanks.
     
    boyaregames likes this.
  29. Neonage

    Neonage

    Joined:
    May 22, 2020
    Posts:
    288
    URP is the most useful when you have many unique meshes (kitbash workflow, deformation, huge open world, etc...) and want them to be batched efficiently by shader variants, and when you need tons of lights using Forward+ with MSAA.
    It also allows you to render things on lower-level via BatchRenderGroup (which is what used as a base for Entities renderer) and avoid game-objects (they plan to make this easier by exposing GPU Resident Drawer API).
    The gains in these cases are tremendous, and I'm happy that URP provides so many optimization options.

    So far the only things I'm missing is per-instance material properties overrides (which is what GPU Resident Drawer should potentially allow, at some point..), akin to ECS Material Overrides or MaterialPropertyBlock (right now you have to duplicate material for each unique instance... which sucks a lot), and efficient LOD component without sub-gameobjects (but I also dreamed of this since the beginning of time in BIRP...).
     
    Ryiah likes this.
  30. Neonage

    Neonage

    Joined:
    May 22, 2020
    Posts:
    288
    No need for yet another RP.
    The way I see it is they should deprecate HDRP and start merging all the features into URP, while reducing the bloat on all fronts and providing proper conversion tools.
    We don't need every feature in URP to be compatible with very old hardware.
    I'm recently using a port of Volumetric Fog from HDRP, and it works wonderfully:
    https://github.com/mseonKim/URP-VolumetricFog-ForwardPlus
    So, it could certainly be possible, and will make everyone's life so much easier, especially for Unity rendering teams.
    Coexistence on the other hand? No way. No. It'll never work for many obvious reasons.

    Also, I've recently tried to use HDRP... And it still feels to be in such a raw state. Editor can't handle how heavy it is and constantly freezes or crashes in a small project, SSR filtering is awful (literally says so in TODO comment), Raytracing features produce ridiculous artifacts and are unusable for games, High-quality Hair (Line Rendering) didn't work at all, Triplanar Parallax is broken on curved surfaces, DepthOffset works with Triplanar Parallax (and looks gorgeous) but is broken with regular UV, so on and so forth...
    The only thing I loved in it was Volumetric Fog :p
     
    thelebaron, Slashbot64 and Ryiah like this.
  31. jiraphatK

    jiraphatK

    Joined:
    Sep 29, 2018
    Posts:
    306
    When will people ever understand that authoring ligh in hdrp is inherently incompatible with URP. Porting features is certainly doable and should be done. But to deprecate HDRP while it have something that is uniquely valuable like physical like unit / camera base exposure workflow is unreasonable. Just because you don't ever need it doesn't mean it is not providing value to people who are using it.

    And frankly your rant of hdrp broken features is funny. It showed that you have never worked with it.
     
  32. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,958
    IMO they should solve all these problems in one fell swoop and just deprecate all rendering.
     
  33. Neonage

    Neonage

    Joined:
    May 22, 2020
    Posts:
    288
    How? It's the same intensity sliders, the HDRP is just based on physical units. Or what exactly do you mean?

    If I worked with it for a longer time, then features would start to magically work as intended?
     
  34. jiraphatK

    jiraphatK

    Joined:
    Sep 29, 2018
    Posts:
    306
    In URP, you don't have to base your lighting setup on camera exposure. You don't have to care at all about why a point light works perfectly fine in one scene and will flash bang your camera in the other scene with the same intensity.
    If I want a bulb to have exactly this data I can do it in HDRP but not URP.

    upload_2024-3-31_8-48-45.png

    this 500 lumen bulb will either have no light at all or will shine like a sun based on camera exposure. In HDRP, since we can control camera exposure, we can adjust how bright 500 lumen is. URP has static exposure so you can only increase or reduce the intensity to adjust its brightness. You can argue that oh there is a exposure compensation but that is not equivalent to exposure. At this point, the lumen will be just another arbitrary unit that doesn't make sense to use at all. Why use a physical light unit in the first place if you have to adjust the value to be in a range that's so absurdly irregular for what it is supposed to have in the real world?

    The authoring workflow is incompatible. For good reasons as well. Most URP users don't need this extra complicated light setup. Most of you don't want to sacrifice perf (because it needs more complex lighting calculations) to make this work. And this exposure stuff leaks into every part of HDRP. You don't want to remake every emissive shader to support exposure weight do you?

    In a roundabout way, yes. You'll know some minefield settings need to be avoided, or that some features will brick other features, etc.

    Most of your claims are so broad and hand-weaving dismissive. RTX for example, is setting/feature-specific. I don't know what RTX you're talking about. GI, AO, Shadow, Reflection? If it's GI, then there is also performance mode and quality mode that are entirely different implementations. My personal experience with it is that the perf mode is GOOD quality-wise. It can be used in the game if your scene is simple enough(like the lego game one).

    It's like saying HDRP volumetric fog is S***ty, noise everywhere, and is the most perf-hungry feature in the pipeline ever (including even RTX), or that perf in URP is worse than built-in, or that Unity is only good for mobile. These hot takes sure paint a vivid picture of the real situation right?
     
  35. Neonage

    Neonage

    Joined:
    May 22, 2020
    Posts:
    288
    It's the same problem they'll have to address with Coexistence.
    Why can't URP support the same camera exposure feature?
    And no one stops me from using static exposure in HDRP.
    It should all be optional and made into a global toggle like "Physical Lighting Calculations".

    It's not that big of a deal if they provide a shared utility function, and people will update their shaders only if they need this option. With Shader Graph it would be even less work.

    Yes, GI, but both modes didn't work for me with simple moving objects, it was like Denoiser ignored some areas completely. Funny enough, the issue was worse in Quality mode.
    RTX Reflections were quite good, except Hair-strands didn't render in reflections.
     
  36. eiwzkart

    eiwzkart

    Joined:
    Feb 25, 2016
    Posts:
    64
    As the Thread creator, my last questions is:

    Our team is currently using Unity 6.0b15, and going to make the final releaes with Unity 6(LTS) + Built-in pipeline, will it cause any problem if Built-in pipeline is no longer included in Unity 6 LTS ? Are we forced to switch to URP by that time?
     
  37. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,455
    Wait, are you asking if you'll be able to make a release with it if it's removed? Or am I misunderstanding? I don't see it being removed with Unity 6 LTS. It's much more likely to be removed with Unity 7+. Unity wants those BiRP users to be on the new license. :p
     
    eiwzkart likes this.
  38. eiwzkart

    eiwzkart

    Joined:
    Feb 25, 2016
    Posts:
    64
    It's the Time for us to start testing URP and create a branch to test URP and prepare for the removal of Built-in pipeline, a lot of shaders has to be remade after switching to URP
     
  39. Crystalline

    Crystalline

    Joined:
    Sep 11, 2013
    Posts:
    176
    Probably nothing . But BIRP is still very stable fast and battle tested . There’s nothing yet that would require our project to switch to urp or hdrp. BIRP can achieve anything in its current state , and without having to deal with 300 scriptable object settings, and increased build times .
    BIRP still ahead imo.
     
  40. bugfinders

    bugfinders

    Joined:
    Jul 5, 2018
    Posts:
    1,982
    Sorry but urp needs to work far better than it does, the fight for me is not worth it
     
  41. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,958
    If I’m ever forced to move a built in project to URP, that will be the end of support for those projects.
     
    bugfinders likes this.
  42. soleron

    soleron

    Joined:
    Apr 21, 2013
    Posts:
    623
    Absolutely.

    I find the whole concept of two different pipelines ridiculous.
    (Three if you could BIRP although it is barely maintained these days.)
    Not to mention the ridiculous cost and wasted manpower and confusion to maintain and advance two different rendering pipelines...

    It should have been a unified pipeline with the same style of settings we see in each one today that could be either scaled up or down accordingly.

    If it really is the same thing under the hood, and URP/HDRP are just templates, then there really is no reason why it can't be that way, and if it isn't, then they should get rid of whoever sold them the idea... if they haven't already that is.

    It has cost them a lot in many ways.
     
  43. spiney199

    spiney199

    Joined:
    Feb 11, 2021
    Posts:
    8,159
    I don't think concept of multiple render pipelines is ridiculous. Blender has had two render pipelines for a long time now, and it's been for the better: Eevee and Cycles (three if you count Workbench). Both have different use cases and do them very well.

    The difference is just in the execution, in which Unity has fallen short I would say. Settings all over the place, feature disparity, and no ability to swap between them seamlessly. In an ideal world, we could swap between the two with a single dropdown. But alas.
     
    Last edited: May 1, 2024
    Sluggy likes this.
  44. soleron

    soleron

    Joined:
    Apr 21, 2013
    Posts:
    623

    The comparison if a bit off to put it mildly.

    Blender had only one pipeline, and developed one more, that completely changed the game because technology changed and it gave the users a distinct advantage. Superfast Realtime GPU Rendering.

    It didn't have one, and developed two more which can do the same as what the previous one could, but with a much more complex and convoluted workflow that in many ways forces you to maintain two different versions of the project.

    The execution is obviously different too, but it all starts from the bad idea, that caused the bad execution.

    If you want to make something new, scalable and programmable, you do not need to make it twice :p

    From that alone, they should have realized their approach was wrong.

    Having to split your "scalable" pipeline means it is not really scalable. ;)