Search Unity

  1. Unity 2019.2 is now released.
    Dismiss Notice

Unity Lightweight Render Pipeline is Evolving!

Discussion in 'Universal Render Pipeline' started by Tim-C, Jul 9, 2019.

  1. Tim-C

    Tim-C

    Unity Technologies

    Joined:
    Feb 6, 2010
    Posts:
    2,093
    Hi all. We will be making a pretty significant change to LWRP over the next few weeks for 19.3 and I wanted to give a heads up / take time to answer any questions or concerns you might have. So what is this change? We will be renaming LWRP to Universal Render Pipeline. Here is some text describing the reasons:

    -----------------------
    Lightweight Render Pipeline is Evolving!
    In 2019.3 we will be renaming the Lightweight Render Pipeline to the Universal Render Pipeline.

    Lightweight Render Pipeline has been growing and changing since coming out of preview. It has increased platform reach, added a number of features and become something we are very proud of.

    When we originally envisioned LWRP it was as a fast streamlined pipeline for mobile and lower end devices and the name was chosen to reflect that; Lightweight. Over the last year though we have been extending features, performance, and platform reach so much that Lightweight doesn’t feel like a good fit anymore. We want everyone to feel just as confident in Universal as we do! Our first step will be to rename the LWRP to the Universal Render Pipeline in 2019.3.

    *Why Universal?*
    Universal reflects the intended role and nature of the render pipeline.
    Universal runs anywhere Unity runs.
    Universal has tooling designed for everyone.
    Universal is designed for making all types of projects (2D, 3D, XR)
    Universal is growing to become the default rendering option for Unity projects.

    *What does this mean for me as a user?*
    If you have been using LWRP for the last year then should have a good idea about how the pipeline works and the feature set it currently has. When transitioning from LWRP to URP we want to make sure the process is as seamless and streamlined as possible. A project that currently working in LWRP should upgrade to Universal with very little intervention. We are preparing a more detailed upgrade guide also.
    ----------------------------
    Do you have any LWRP projects you wish to share with us to validate our upgrade path? Please get in contact.
     
    Last edited by a moderator: Sep 5, 2019
  2. GforceX

    GforceX

    Joined:
    Sep 8, 2015
    Posts:
    2
    When will you support shadowmask lightmap?
     
  3. niiiICOle

    niiiICOle

    Joined:
    Jul 10, 2019
    Posts:
    1
  4. Immu

    Immu

    Joined:
    Jun 18, 2013
    Posts:
    150
    Can we expect Universal to be production ready for 2019.3 ? Since tt's rebranding for LWRP, which is not truly production ready... (just checking at the number of users post regarding that subject)
    As far as I'm concerned, as a customer, I'm worried to see that rebranding as a way to dismiss the not so efficient optimizations broughts by LWRP and that are still waiting for a true production ready version (more-less what we're gonna have for 2019.3, again, checking the posts).
    I mean, after all, Universal doesn't mean Optimized or Lighter, just...Universal.

    No hate in my comment, I'm just deeply confused by the overall communication about the status of LWRP from day one.

    Especially the whole 'package are not tied to engine when production ready' => 'finally, it's production ready, but you'll still have to update engine each time we have a fix'. And that rebranding makes me worried that the trend will continue after 2019.3.

    Anyway, thanks for keeping us informed, better than nothing of course ;)
     
    M_R_M, Squize, pixelR and 12 others like this.
  5. Ruberta

    Ruberta

    Joined:
    Mar 5, 2019
    Posts:
    60
    Are you going to add more features to UniversalRP? Please careful about optimization. LWRP now is good for me on PC (60-90fps+) while HDRP only archeive 30 fps.

    But LWRP still lag of features so I think you should give options for user to enable or disable some features that have impact on performance. Performance by default is good then you add more features to make it more universal.
     
    afshinunity, soleron and CoCoNutti like this.
  6. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    5,985
    Since Universal sounds increasingly like the legacy pipeline, what benefits would it have compared to legacy?
     
  7. Ruberta

    Ruberta

    Joined:
    Mar 5, 2019
    Posts:
    60
    You have shader graph and vfx graph. Along with SRP Batcher. I think it'll have more performance then legacy.
     
  8. liiir1985

    liiir1985

    Joined:
    Jul 30, 2014
    Posts:
    95
    I'm more worried about the name changes of API and shader, we are currently using LWRP in production and made us alot of trouble with shader variable renaming(_MainTex to _BaseMap), and I'm afraid you guys are doing that again.
    Be honest, production ready package shouldn't suffer such a great rename/refactor problem, we understood api could change greatly in preview stage, but not to be expected in a production ready package. Yes, you'll provide an API upgrader to do most of the job, but not with the customization we've made and extended, and that will make a lot of pain.
     
    Last edited: Jul 11, 2019
    M_R_M, closingiris, Thrawn75 and 3 others like this.
  9. Peter77

    Peter77

    Joined:
    Jun 12, 2013
    Posts:
    4,212
    I was also thinking if it means that UniversalRP ends up stuffed with all sorts of things, for way too many use-cases, and whether in the end it will be a monolithic hard-to-change thing like the built-in pipeline?
     
  10. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    25,828
    Not really happening because some of the big bottlenecks were all the little hooks for rendering, and that's all been cleared out. With SRP batcher and new features added within the constraints of Uni it should be fine IMHO.
     
    AlanMattano and Corvwyn like this.
  11. GforceX

    GforceX

    Joined:
    Sep 8, 2015
    Posts:
    2
  12. joshcamas

    joshcamas

    Joined:
    Jun 16, 2017
    Posts:
    864
    I like the sound of this, as long as LWRP is modular enough to not require fancy features for people who don't want them - and it sounds like this is exactly the plan.

    To me this move makes sense, mainly because it felt like a lot of games would be forced to use the legacy pipeline, and thus not have access to the new spicy features.

    Hopefully this means someday the URP will support everything the legacy pipeline does!!! :D :D
     
    MegamaDev likes this.
  13. joshcamas

    joshcamas

    Joined:
    Jun 16, 2017
    Posts:
    864
    Also the ability to hook in a custom renderer! :)
     
  14. Thrawn75

    Thrawn75

    Joined:
    Nov 16, 2014
    Posts:
    2,239
    Questions:

    1) Are you going to rename every bit of "LWRP" in the packages source? LWRP just came out of preview in 2019.1 and a major renaming change in 2019.3 seems radical. We're still waiting for important fixes and features in order to replace builtin (VR Single Pass Instanced for effects, camera stacking, inverted depth texture issue in SceneView, ...).

    2) What happens to existing assets/projects that are embracing "LWRP", "HDRP". I'm concerned about migration or compatibility issues between assets or components that are built for LWRP or new ones that require URP. How can they coexist?

    3) In any case, "Universal" naming change doesn't make any sense IMO. How does "Universal" compare to "HDRP"? Keep things simple. LWRP is meant for speed. HDRP for quality. Or are you vaguely suggesting that Universal could eventually replace both LWRP and HDRP?

    However you could provide an Universal Standard Shader convention or interface that works across all pipelines! ;)
     
    Last edited: Jul 12, 2019
    chingwa, pixelR, closingiris and 9 others like this.
  15. joshcamas

    joshcamas

    Joined:
    Jun 16, 2017
    Posts:
    864
    I was into the idea of renaming it, but these are some good points. I didn't realize a name could affect people's interpretation of it so much. Branding is important
     
  16. elbows

    elbows

    Joined:
    Nov 28, 2009
    Posts:
    2,396
    Branding and perception is why they are renaming it!

    They have decided that the term lightweight has some negative connotations, and implies a narrower purpose than they want to push this pipeline as being suitable for.

    I am inclined to agree, although it obviously also takes features and time for perceptions to change. And its a shame they didnt make this decision while things were still in preview.

    By the way I wish there was a dedicated subforum for this pipeline, and that it was made clear on all LWRP threads in the experimental graphics experimental previews subforum that since LWRP/Uiversal is out of preview, thats not the place to talk about it any more.
     
  17. DavidSWu

    DavidSWu

    Joined:
    Jun 20, 2016
    Posts:
    130
    Who wants to talk about "General Graphics" when you can be talking about an "Experimental Preview"!
    We all like to pretend to be on the cutting edge. Unless we are talking about Goggle where nothing leaves preview and you suddenly realize that you have to actually ship something to make money (well, usually) and you are using a dozen tools/platforms that are never going to be stable.
     
  18. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    5,985
    You made a typo there, it’s spelled “Unity”.
     
    mhazani, Kolyasisan and joshcamas like this.
  19. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    7,782
    My question exactly, if lwrp becomes more feature full and less efficient, why change from the amazing, full working and supported universally, standard pipeline ?
     
    Last edited: Jul 14, 2019
    NeatWolf, LIVENDA_LABS and JamesArndt like this.
  20. sacb0y

    sacb0y

    Joined:
    May 9, 2016
    Posts:
    182
    yeah does this mean feature parity with standard? Or will i still be missing real-time GI features?
     
  21. Game-Dragon

    Game-Dragon

    Joined:
    Nov 16, 2012
    Posts:
    6
    Is the only difference the naming? Or will this also be improved to have features from built-in render pipeline?
     
  22. elbows

    elbows

    Joined:
    Nov 28, 2009
    Posts:
    2,396
  23. Kolyasisan

    Kolyasisan

    Joined:
    Feb 2, 2015
    Posts:
    267
    Sounds more like the legacy pipeline to be honest.

    While more features to choose would be quite wonderful, I think we all just wish for URP to be as modular and as performant as possible, where all of the features and the aspects of rendering can be toggled off and modified, or stacked upon from the base. Unavoidable bloat and monolithic features are the last things developers need in their rendering process. Please, do not mess this aspect up.
     
    Last edited: Jul 15, 2019
    M_R_M, Squize, pixelR and 9 others like this.
  24. sacb0y

    sacb0y

    Joined:
    May 9, 2016
    Posts:
    182
  25. andyz

    andyz

    Joined:
    Jan 5, 2010
    Posts:
    1,154
    That's interesting news

    But, to be honest, I found it to be a bit dodgy when I tried using it, it has a confusing setup and materials do not work as expected if not using baked lighting (scene is sluggish to update and materials appear to turn black when you add too much specular! [case 1169708]). It did not appear like a finished [or non-preview] system.

    Also just to start a LWRP project from the hub takes some time as it imports all the template assets and a bunch of packages which you may not need yet (Collab, in-app purchasing, ads, analytics...)

    But how do this and HDRP combine, HDRP is specialist for AAA high-end games and this for rest?
     
  26. BazookasZerreth

    BazookasZerreth

    Joined:
    Dec 8, 2016
    Posts:
    17
    Will universal move to the same volume approach as HDRP with actual real units such and lux/lumens / switcable units ? I find it dramatically more intuitive to work with than the old intensity values & post process package.
     
    Hypertectonic, transat and newguy123 like this.
  27. Ruberta

    Ruberta

    Joined:
    Mar 5, 2019
    Posts:
    60
    No! I don't think so. Not everything need to be realistic. Light is really hard to adjust in HDRP if you really want stylized graphic. LWRP is far more simple to setup even it's lag a lot of features. UniversalRP should not focus on just realistic.
     
  28. BazookasZerreth

    BazookasZerreth

    Joined:
    Dec 8, 2016
    Posts:
    17
    Well you can toggle between intensity / lux / lumens / color temp in HDRP if i'm not mistaken, so that's what I'm asking for. Switchable units :p as for the volume approach, the post process stack already uses a similar workflow, and the generic SRP volumes allows for way more config, I just wish the last remaining vestiges of the quality settings would move to volumes as well. In terms of shaders (PBR/Diffuse) it shouldn't matter as that is custom/configurable anyways.

    Modularity & Scalibility.
     
    Ruberta likes this.
  29. mountblanc

    mountblanc

    Joined:
    Sep 24, 2015
    Posts:
    73
    Hi Tim, thanks for the heads up.
    I started working on a project a few weeks ago in Unity 2019.3.a5 (brave step or a stupid one or both?) and later moved to 2019.3a7 (2019.3.a8 i skipped so far)
    Its a 2D project where i use the LWRP experimental 2D lights. I already noticed there that the Sprite mask are only working if you set a custom range as i found out and described here
    So i am willing to migrate to the new universal by trying a migrate path if you can point me to the right direction.
    At least if the experimental 2D lights are included.
     
  30. elbows

    elbows

    Joined:
    Nov 28, 2009
    Posts:
    2,396
    Generally I would recommend keeping an eye on the changelog in the master branch on github. Here is the changelog for the freshly renamed Universal pipeline:

    CHANGELOG.md

    Its a question of timing as to whether master branch at some moment in time, or specific release versions, are suitable for us to try at that time.

    In this case, I would say timing is bad, and you should wait a little bit longer, for several reasons:

    1) Changelog indicates that 7.0.0 release date was 10th July. However, that releases files havent shown up as a release package on github for 7..0.0 at the time of me writing this.

    2) Master and releases need to be paired to correct editor versions. In this case, when I look at package.json file in release/7.0.x branch, I see that it is marked as requiring 2019.3, which is fine, but it is also set to require at least version 0a10 of 2019.3. So I would not even try to make this release work with the earlier alpha of 2019.3 that we currently have available to us unity users.

    https://github.com/Unity-Technologi...unity.render-pipelines.universal/package.json

    edited to add - in case of upgrade to Universal, there is another reason I wouldnt try yet. The link to the upgrade guide which is mentioned in the changelog does not work for me yet, so far there is a permission issue and google docs says I need to request access.
     
  31. DavidC02

    DavidC02

    Joined:
    Jul 19, 2011
    Posts:
    147
    How would you achieve sun shafts right now?
     
  32. GoGoGadget

    GoGoGadget

    Joined:
    Sep 23, 2013
    Posts:
    656
    Admittedly I haven't worked much with LWRP previously, but taking a look at the PostProcessing part of the new URP, it just feels like a step back architecturally.

    You have a 1000+LoC monolithic behemoth of a postprocessing script that looks the furthest from "extensible" that I have ever seen in Unity PostProcessing, and I'm not really sure how it fits with the 'universal' mantra when you've got most mobile games using only 1-2 effects, but paying the compilation cost for all of them (even if said cost isn't massive)?

    I might be missing the point here completely, and you guys have taken some great steps towards improving PostProcessing in particular - there's stuff possible now that just wasn't in 4.x or 5.x. But when I see things like that, it worries me that this is going to be another one of these new Unity features that never quite reaches a 'production ready' status in its current implementation and gets rewritten again in 2 years? I may be wrong here and hope I am, it would be great to hear a bit more about the benefits of some of these elements.
     
  33. fherbst

    fherbst

    Joined:
    Jun 24, 2012
    Posts:
    359
    @Tim-C I do have a project where I think it would be interesting for you to test the upgrade path. Can't contact you via DM though, so I'm replying here.
     
  34. larsbertram1

    larsbertram1

    Joined:
    Oct 7, 2008
    Posts:
    5,260
    i fully agree with this.
     
    Last edited: Jul 21, 2019
  35. GameDevCouple_I

    GameDevCouple_I

    Joined:
    Oct 5, 2013
    Posts:
    2,131
    Thats the point though, as they already mentioned LWRP has evolved to not really mean speed anymore. It mostly means compatible with all platforms. So the new naming makes more sense actually, given that a lot of people use LWRP thinking they will get a magic perf boost and then come here to whine about not getting said magic.
     
    Xskey likes this.
  36. Immu

    Immu

    Joined:
    Jun 18, 2013
    Posts:
    150
    I get it.
    But LWRP was already meant to be compatible with all platforms, just like built-in.
    It was and is advertised as the speed/optimized thing.
    If it's confirmed it's not about speed anymore I only see a regression here, not an evolution.

    I didn't switch to LWRP for compatibility, built-in already was.
    The whole point of LWRP was to be faster compared to built-in.
    (and I get it, many people surely tries to use it thinking it's magic and whine because they don't study it more carefully)

    But here, it's just: ah. nah. It's just like built-in but we decided to rebrand it, and separate it with HDRP.
    (I know it's whole new engine stuff but you get my point, I'm talking communication issues here)

    I see it as a complete miss/fault. What's bugging me it's the fact that this it doesn't seem to be aknowledged, so no lesson learned.
     
    Squize, pixelR, JimmyCushnie and 3 others like this.
  37. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    7,782
    Hi

    Is there a way to render depth map from a 2ond camera in the same scene as the main camera in LWRP ?

    Thanks
     
    P_Jong and satchell like this.
  38. Iron-Warrior

    Iron-Warrior

    Joined:
    Nov 3, 2009
    Posts:
    680
    Has there yet been a clear answer on whether the Legacy Pipeline will be deprecated? It seems like in some way it would need to be, since it's not compatible with ShaderGraph or VFX Graph (pretty useful new features!), but I think what's key here is communicating whether someone starting a new project should default to the Legacy or the UWP.
     
    newguy123 and JamesArndt like this.
  39. liiir1985

    liiir1985

    Joined:
    Jul 30, 2014
    Posts:
    95
    If we talk about LWRP is faster than builtin, then we need to understand what exactly does this mean, and how we can use this advantage. Many people are trying to use LWRP and thinking they'll get perf gain in any aspect and then find out it isn't the case, this will cause even more frustration. So I'm also thinking that the name LWRP is quite missleading and not suitable for what it really is(well not suitable from the begining, not unity suddenly changed the direction).

    In fact, if you compare LWRP with the builtin pipeline carefully, you'll then notice the performance gain is only possible in certain situations and with many limitation, for example: Using dynamic point lights in the scene, which isn't that widely used for platform, LWRP was advertising for.So if you are not planning using several dynamic point lights in the scene, you won't notice any obvious performance boost.

    So why bother using LWRP? It indeed has more potential to get more performance out of the machine. Because it is much easier to achieve better performance if you constrain the capability, and LWRP allows you to control nearly every aspect of the render pipeline so you can adjust it to suit your need much better than the builtin one. Even without modifying single line code of LWRP itself. It's much easier for both Unity and the LWRP user to implement specific optimized features thanks to the modular design of LWRP, this wasn't possible in builtin pipeline at all. Giving you the flexibility to strip, enhance, optimize every single feature in the renderpipe line to suit your specific need, and to get the maximum performance out of your target platform is the key point of the whole SRP story.(with your custom modification, because optimization often means to abandon support for some other cases, only you know what you don't need and mostly care about)

    In summary, you'll get performance boost not because it is lightweight, or because of some magic burried inside lwrp. You can get better performance and implement some feature which wasn't possible in bultin, because of the high flexibility and the solid piepline framework LWRP provided.
     
    Last edited: Jul 29, 2019
  40. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    7,782
    I thought this kind of optimization was already possible by creating custom shaders than use the standard pipeline

    You control what goes in shader and still have the same API and not need to change everything like a new engine.

    Or LWRP does something even more optimized in this regard ?
     
  41. Immu

    Immu

    Joined:
    Jun 18, 2013
    Posts:
    150
    Indeed It's more like LWRP = Replacement for Built-In (Since more customizable and possibilities for broader optimizations, and shaderGraph/vfx support)
    But again, it hasn't been advertised by Unity like that. Miscommunication to me :3
     
  42. liiir1985

    liiir1985

    Joined:
    Jul 30, 2014
    Posts:
    95
    It's not that simple, shader computing is only a small fraction what costs gpu time, other things like bandwidth/fill rate are not dominated by shader complexity, and have much bigger impact on framerate on mobile devices.
    One big example for this is something like GrabPass, which's used for distortion caused by fire or something like that, this consumes a huge amount of bandwidth which will cause major performance problem on devices like cellphone, so instead of grab the framebuffer for every particle/shader pass. LWRP just saves the Render result of Opaue objects into a RenderTarget, and uses that for such purpose.
    And some other examples are special effect like rendering outline for some specific entities, in builtin shader you have to use multi-pass shader and it's very hard to control the render order of it, so if you want to render a transparent outline, it'll be very very messy and difficult to implement with builtin pipeline. With LWRP you can even control the render order exactly you want to prevent overdraw.
    A further example would be if you want to have the blurred glass effect on UI, which blurs the 3D scene, if you are using builtin pipeline, what you can do is basically using a super heavy gaussian blur shader, which samples at least 49 times for every single pixel.... this isn't acceptable on mobile device. With LWRP you could downsample the Camera Color Attachment to a very small RT and blurs it with a very simple box filter and then upsample it to achieve a similar effect, but with a much higher framerate



    Yeah, that confused me a lot, too. So I think renaming it to universal is good for now. It's just that I don't want to change all my customized stuff again due to such a major renmame event :(
     
    Last edited: Jul 29, 2019
  43. LaireonGames

    LaireonGames

    Joined:
    Nov 16, 2013
    Posts:
    429
    So I found this bug the other week and its horrific for us: https://issuetracker.unity3d.com/is...s-eulerangles-if-its-y-rotation-is-close-to-0

    There is a slight workaround but the main point here is what I got back from QA today:

    "We would like to inform you that due to Universal RP and HDRP now leading the graphics research and development, we will not be able to allocate dev time for this issue. We would encourage you to try out the before-mentioned render pipelines, as they both feature vastly improved shadowmap rendering techniques."

    This is just not acceptable :( This post shows your clearly still learning and playing with the pipeline, this is totally fine and expected for new features. BUT. To not support what has been the backbone of Unity at the same time is madness because now I have no good choice.

    Its either stay on a now unsupported platform or jump to render pipelines that are still being experimented on and still don't have feature parity.
     
    M_R_M, stonstad, Thrawn75 and 5 others like this.
  44. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    5,985
    Get used to this.

    Unity has a pattern of starting new experimental features that take years to complete and in the meantime refuse to fix bugs in the current features.

    It is an issue that has become much worse in the recent years.
     
    Tx, M_R_M, stonstad and 2 others like this.
  45. LaireonGames

    LaireonGames

    Joined:
    Nov 16, 2013
    Posts:
    429
    It does sadly seem to be the case. These are the things that make me seriously consider competitors like Unreal for my next project (I would do it for this one if it wasn't like starting from scratch!).
     
  46. larsbertram1

    larsbertram1

    Joined:
    Oct 7, 2008
    Posts:
    5,260
    you must be kidding...
    sounds like a joke as well, as hdrp is still in preview.
    @Tim-C any comment on this?
     
  47. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    25,828
    If you have a case where URP is slower than built-in please file a bug report. It should always be faster.
    In addition the improvements aren't just performance but you get VFX and Graphs (including 2D) plus later proper DOTS rendering integrations.

    So if someone is saying "this is slower" then no, they're not going to be listened to unless they post a bug report, because the design is that it is faster.
     
    NeatWolf and quixotic like this.
  48. LaireonGames

    LaireonGames

    Joined:
    Nov 16, 2013
    Posts:
    429
    Speed isn't the issue here, its stability :)

    Edit: ahh sorry forgot folks where talking about speed before my post. Without the quotes I assumed it was the last thing talked about
     
    M_R_M likes this.
  49. Ruberta

    Ruberta

    Joined:
    Mar 5, 2019
    Posts:
    60
    They're not answer yet, isn't it? The comment one is not from Unity team??

    Now, Unity 2019.2 is out and I upgraded my project. The performance still great with 90fps+ in my test scene. No problem with previous version of my custom shader in shader graph too.
     
  50. LaireonGames

    LaireonGames

    Joined:
    Nov 16, 2013
    Posts:
    429
    Nope nothing new said yet, full conversation is here: (Had a link to the conversation here, feel free to PM me if your curious to read it)

    As a note, the video I posted was a very mild form of the issues we are seeing. Video: https://drive.google.com/open?id=1P9-dNwP2a8OlbVNbjd3mT_A0fzNfakkT

    Honestly though I don't expect any further replies but I have noticed the issue was officially marked as wont fix but now it says active :/
     
    Last edited: Aug 1, 2019
    Ruberta likes this.