Search Unity

Is anybody using URP on production for a PC game?

Discussion in 'Universal Render Pipeline' started by spvn, Aug 23, 2021.

  1. spvn

    spvn

    Joined:
    Dec 10, 2013
    Posts:
    80
    I've been waiting for years for URP to be properly production ready. If you read any Unity staff's messages they all seem to imply it's ready but forum posts everywhere seem to disagree. I don't forsee my game being released within the next year so I'm wondering if I should just start with URP now, or is it still really far from being fully production ready?
     
  2. PerunCreative_JVasica

    PerunCreative_JVasica

    Joined:
    Aug 28, 2020
    Posts:
    47
    We have switched from built-in to URP for our game Hobo: Tough Life which was recently released in full version on steam. Working with URP was quite straight forward, but we still had to do quite some work to make it work for our use case (e.g. proprietary realtime GI, custom shaders etc.)
     
    laja and PutridEx like this.
  3. apkdev

    apkdev

    Joined:
    Dec 12, 2015
    Posts:
    284
    I've been using URP for over a year on an unannounced project that's about halfway completed. My experience with URP has been mostly positive - it's rather stable and the performance is great. There's some missing features that you will need to find workarounds for, but this will heavily depend on your project's requirements.

    Check out the URP roadmap if you want a high-level overview of what features are here and which ones are coming: https://portal.productboard.com/8ufdwj59ehtmsvxenjumxo82/tabs/3-universal-render-pipeline

    Detailed feature comparison with built-in RP:
    https://docs.unity3d.com/Packages/c...l/universalrp-builtin-feature-comparison.html
     
  4. sergiusz308

    sergiusz308

    Joined:
    Aug 23, 2016
    Posts:
    235
    @spvndrspgl buckle up since it's going to be a very bumpy ride. Unless you pay for direct support from the Unity team or you have dedicated people just to work around issues and problems you WILL face along the way, a lot of them. I am talking about official and LTS releases only.


    For example, today, I was working on the simple lighting setup: couple of baked lights, one real time spotlight. Spotlight casts shadows in the scene view but not in the game view. Go figure why.... Oh, you think you will read about it in the documentation? It's completely useless, does not go beyond basic stuff, something that you can work on your own - total waste of time to read it.


    Couple of years ago I'd recommend to go with Unity full ahead - after two years of development (as a small team), first HDRP project, now URP project, I'd advise AGAINST going with Unity unless you pay for dedicated support.


    It's unstable, despite all LTS bages. It's not like it crashes in a major way during development or in runtime. Honestly I never experienced nothing like this, despite having working through complex scenes and setups. But it's those little things, like the spotlight above, that would riddle your development days, throwing little rocks under your feet so that you're constantly on the defense, stressed out that you're going to miss another milestone because of irrational, non-documented and absolutely unique (no one else experienced that, at least you can't find anything related in the forums or answers) problem that some beautiful morning just pops up and sucks you into hours and hours of investigation and hair pulling.


    There are still missing basic features (camera stacking), efficient animation support, XXI century and URP still does not support SSAO, simple reflections – it’s all experiments and previews for which you pay every month with your money and wasted time and a lot of the stress. It's not easy to achieve look-n-feel they advertise in the blogs and youtubes – pipelines are changing a lot and learning materials (in-depth things that are of any use) become obsolete in matter of weeks. Some more advanced features require programmatically extending rendering pipeline – that’s fine, but… there’s no solid documentation available and it’s game of cat-n-mouse. There's a TON of nuances then working with lighting and shaders. Prepare to be blow away by things not working in build, but perfectly fine in the Editor, incl. not working shaders and assets – it’s not like it complaining during build. No, it all goes green, but it’s simply missing in the build runtime, not working…. (BTW - their refund policy is a joke and lot of people selling assets simply ignoring your problems and not responding to the emails. Unity Support does not care about that much, unless you really go berserk with them over a 30 bucks... Knowing which asset works for which pipeline – it’s something they still don’t think is useful for their customers. You have to be really careful reading through descriptions to understand which rendering pipeline is actually supported. Since there’s no standards or in-depth reviews of the assets in some case you will achieve expected look but it will brake some other things, because asset is poor port from built-in pipeline or it’s designed and programmed like it’s the only feature in the game.


    On the plus side there's a wide array of tools available to work on almost every type of projects: workflow and pipeline- wise there's really hard to pick on anything; c# programming is a huge plus (for me), licensing model (no royalties) and fairly low costs for lower tiers. There are some solid assets that really speed up level-design, shader development or animation editing in the editor.


    If you don’t have a strict deadline, fairly simple rendering requirements and gameplay mechanics, considering all I said above – I’d still advise at least to spent a month on prototyping heavily and testing before making a decision. If you decide to go with Unity, I strongly advise paying for dedicated support. Community won’t help you much - many of the folks trying their best, but it’s simply not possible to catch up enough with the changes and a lot of documents and materials are outdated or just cover basic things that you still have to investigate on your own. Good luck!
     
    deXter_969 and matsakovd like this.
  5. PutridEx

    PutridEx

    Joined:
    Feb 3, 2021
    Posts:
    1,136
  6. PutridEx

    PutridEx

    Joined:
    Feb 3, 2021
    Posts:
    1,136
    URP does support SSAO in 2020 LTS and after. Has reflection probes - reflection bending & box projection will be in 2021.2

    Doesn't have SSR and Temporal antialiasing though.
    I personally use HDRP and it's quite stable (2020LTS and up), much better than early versions. Performance is improving, and updating your project is well documented and usually not that hard (relatively speaking) unless your project is getting large or you're using internal stuff. There's also been a good number of popular indie games released lately using HDRP, really impressive stuff.
     
  7. KospY

    KospY

    Joined:
    May 12, 2014
    Posts:
    153
    We are using URP and VR for a game in production (yeah we like to live dangerously). It was a bit of an hell 1-2 years ago but now things are way better. We still have some misc issue that need to be addressed, but overall it work pretty good now. I don't have much experience to compare to legacy rendering however, so I can't compare much.

    @sergiusz308
    I'm surprised of your feedback, we don't have dedicated support, but so far we managed to work with URP without Unity help. A real dedicated support is insanely costly anyway, maybe you are talking about pro or enterprise licenses? We are using pro license but it doesn't change a thing about support for us. Community and an external Unity expert is what help us for now.
    For enterprise licenses, it's 10 seats minimum, and it's only basic support with a quicker response time. I don't think this help much for advanced issues and issue resolution speed. But I could be wrong, I could not find any dev around me using this.
    The real thing seem to be ISS, and it's where you could get real help, but it's not something most indie can afford, especially if you just start. And there is no in-between from enterprise to ISS, if you just want one option in ISS you can't, you have to pay the whole thing for one year.

    By the way camera stacking is supported in URP, we use it for one feature.
     
  8. Matt-Cranktrain

    Matt-Cranktrain

    Joined:
    Sep 10, 2013
    Posts:
    129
    Yeah, the "URP doesn't have camera stacking" and "URP does not have SSAO" made me question how recently sergiuz308 has actually used URP, because I've been using both of them quite happily in production for a couple of years now. Camera stacking was added in 7.2 and SSAO in 10.

    I think at this point URP hits most of the feature-set of the old standard renderer, and has done so for over a year. If you're doing something complex and bespoke that requires editing the render pipeline itself, I imagine the docs are still a bit rough.
     
    NotaNaN likes this.
  9. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,527
    You still cannot use post processing for each camera in the stack right ?
     
    goncalo-vasconcelos likes this.
  10. sergiusz308

    sergiusz308

    Joined:
    Aug 23, 2016
    Posts:
    235
    @KospY , @Matt-Cranktrain @PutridEx - guys, I am happy it works for you and you're doing progress. I shared my experience, yours maybe different - OP has to make his own mind on whatever it's worth it.

    It's true that camera stacking is there - correction here, it;s available - thing is that even in LTS things, basic things, are breaking anyway and that's general problem with quality of what unity releases. Camera stacking was missing for so long that in my HDRP project we had drop some features and move on. In current URP project I am not using this, but I am using SSAO*, that is not consistent - at certain camera distances it's not visible in the game view, but visible in the scene view. Things are not stable in a sense that you can't rely on them, working, regardless of the setup (if you meet minimum setup requirements of course) all the time. It works in a demo scene, you create your own, repeat the steps and setup - and it does not work! Eventually you will make it work, but effort, time, money burned that way is lost and nobody, esp. Unity is going to make it up to you.

    Sure, you can workaround issues and depending on your background and skills you may deal with some problems better or worse, but thing is - a lot of effort still goes into reparing stuff, than creating in Unity. Great deal of projects released with Unity (at least those I was following up) a lot of time were spend into hacking and extending things to make it work. And that's a sad story, 'cause, like I said earlier Unity has some key advantages over other engines.

    *edits