Search Unity

Graphic Future in Unity? – LWRP, HDRP, Shader Graph, Visual Effect Graph, Ray Tracing

Discussion in 'General Graphics' started by SebGames, Apr 24, 2019.

  1. SebGames

    SebGames

    Joined:
    Dec 9, 2014
    Posts:
    35
    I’ve been checking the latest Unity advancements for the graphics. I’m a little bit confused about the best approach to take for my games and where to invest time in development. I’d love to get the feedback from the Unity team on this one if possible, and other people.

    With the Shader Graph and Visual Effect Graph being exclusive to the SRP, I really feel that the Unity team is pushing people to use the SRP because they want it to be the future of graphics in Unity.

    My disappointment
    I was excited about the SRP, Shader Graph and Visual Effect Graph. However, after further investigation, I’m not convinced anymore to use any of these in the short terms. Frankly, I’m kind of disappointed to see the limitations of using the SRP. I know the SRP is still young, but the development direction that it takes makes me think that developing a game is more complicated. Here are some thoughts about my concerns.

    1. Cross-platform development

    Unity has the tag line “Build once, deploy anywhere”. With the SRP, that is not true anymore. The cross-platform is broken at the moment.

    How is the SRP going to be adapted in the future to continue the cross-platform development?

    2. We cannot have both LWRP and HDRP in the same project

    I’m wondering how this is going to an improvement to make a game. In other words, if you want to publish on the Nintendo Switch, you cannot use the HDRP, only the LWRP. If you use the LWRP, you cannot extend your graphics to the best that other platforms offer.

    Limiting myself to choose a RP in the development is a huge problem. How is this going to be handled in the future? I wish I had a way to harmonize everything and use the best features if available at runtime and not having to choose one RP during the development time and preventing me from developing to the maximum that Unity can offer.

    The common approach has usually been to create a game with everything and the players could enable/disabled certain features in the options based on their computer performances, but rarely in development.

    3. I feel forced to integrate the SRP to use the latest technologies

    One of the reasons why I wanted to use the SRP was to use the Shader Graph and the Visual Effect Graph simply because they depend on the SRP. However with the trade-off, I’m losing too many features to move to the SRP and sadly I’m also losing the possibility to use these great tools.

    4. Technology maturity

    None of them are mature. Even though the LWRP is in production, there are still a lot of missing features that we had in the Built-In RP. I wanted to get more flexibility on the RP and I was going to use it, but the trade-off is a problem right now. I understand that Unity is updating the LWRP with the Built-In features, but for now, it doesn’t look like it’s going to have everything the Built-In RP has. I’m curious to see what the final plan and features are about the SRP.

    5. Ray Tracing
    The ray tracing integration has been announced in Unity recently. I don’t know much about it, but to me it looks like it’s the future. The problem right now is that we need an RTX graphic card, but eventually we’ll get there. I’m wondering if the ray tracing will require the SRP. If not, I would prefer to invest time in the ray tracing in the long term. The graphics seem naturally better than anything else. I feel that the ray tracing will lower the graphic gap between Unity and Unreal because, from my point of view, the graphic quality appears relying more on the hardware than different software techniques developed by each company.

    Final thought
    The SRP might be great for people having precise needs and not needing every graphic feature that the Built-In RP has. I love the concept of having more control, but with the trade-off about certain features and especially the cross-platform development, it’s not necessarily an improvement for me and I need that. At the moment, I want to invest time in technologies that will matter in the future, but I don’t see a clear and easy direction about which technologies to use, even though I feel that Unity is trying to push people towards the SRP despite its young age and limitations.

    Is it possible to have a clearer roadmap about this in the long term?
     
    Mullan7, jashan, laeusnb and 7 others like this.
  2. Torbach78

    Torbach78

    Joined:
    Aug 10, 2013
    Posts:
    160
    the future (likely by 2030) software runs server side and sent to client as streaming video
    no downloads or installs + security

    will go HDRP and node based imo
     
  3. SebGames

    SebGames

    Joined:
    Dec 9, 2014
    Posts:
    35
    A post concerning the Ray Tracing was published today.
    https://blogs.unity3d.com/2019/04/26/ray-tracing-what-does-it-mean-to-you/

    It mentions the HDRP as a requirement.

    That clearly means that if you want to use the ray tracing (even as an option for certain platforms), you have to say goodbye to cross-platform portability. That’s the kind of things that disappoint me with the new approach. If we could add the HDRP as an option for the player without compromising the project, or losing other possibilities, that would be great.
     
    laeusnb likes this.
  4. wlad_s

    wlad_s

    Joined:
    Feb 18, 2011
    Posts:
    95
    I’m also looking for some info about the future and some certainty, so I stumbled upon your thread.

    I get what you’re saying. When I was working on my last game, it started as a small iOS game with only 3 levels, but it slowly grew larger and we eventually published it on PC and PS4 with upgraded graphics. Currently, it’s all contained in one project. I just turn a couple of switches and build for each platform from the same project.

    Now, I’m trying to decide if I should use the Built-in RP or LWRP/HDRP for the next game. What I’m mainly concerned about is if Built-in RP will get deprecated and if it will not work on PS5 in the end.

    It does feel like it’s slowly being abandoned because new tools are not being developed for it (like ShaderGraph and Vfx as you mentioned). There are third-party packages in the Asset Store (Amplify Shader Editor and GPU Particle System) but if Built-in RP gets deprecated in 4-5 years time, it doesn’t make sense starting a new project with it now.

    I’d also like if someone at Unity could chime in and help with this decision. But maybe even they themselves didn’t decide on the long term fate of the Built-in RP?

    The main problem we have with HDRP is that RenderWithShader doesn’t exist in it and judging by the response by @SebLagarde in this thread, it’s uncertain if it ever will or if there’s going to be a replacement. We have entire levels planned that are completely dependent on this function in the new game, so I have no idea what direction to choose now. It’s really a bad time now to be working on a new game it seems

    Having LTS Unity versions is helpful somewhat in regard that we can predict the Built-in RP will be there in two years time, but our game will take 2-3 years to develop and we’d want to support it for at least 2 years after release. That means we’d need Built-in RP supported in Unity 2022 LTS and working on PS5 (SDK versions up until 2024), or RenderWithShader working in HDRP next year. I wonder which one of those two is less uncertain.
     
    Last edited: Apr 27, 2019
    laeusnb likes this.
  5. sebastiansgames

    sebastiansgames

    Joined:
    Mar 25, 2014
    Posts:
    114
    I completely agree with the essence of this thread. Throw into the mix the fact that apparently render pipelines are going to fork fundamental Unity functionality per pipeline. Specifically, the LWRP is overhauling cameras so there's no camera stacking in the traditional sense for that pipeline:
    https://forum.unity.com/threads/lwr...-2-1-19-1-are-out.562291/page-11#post-4440742
    Once Unity starts going down this road of having render pipelines on their own development paths with their own unique toolsets, it's going to be a nightmare. Definitely say goodbye to develop once deploy everywhere. Moreover, it could evolve into a system where each pipeline feels like it's own separate game engine as far as development goes.

    I'm in a similar position with the poster above who is having migraines trying to navigate a long term project. Which pipeline I choose seems critical since they are so incompatible and yet it's hard to gauge which features will land where two years from now when I hope to launch. This amorphous pipeline landscape is truly frustrating and debilitating for developers since it no longer seems I'm developing with Unity - but instead forced to choose which Unity basket to put all my eggs in.
     
    Last edited: Apr 27, 2019
    laeusnb likes this.
  6. interpol_kun

    interpol_kun

    Joined:
    Jul 28, 2016
    Posts:
    87
    I somehow agree with you. First, they said about modularity and how cool all things will work. Now they made built-in Post-Processing exclusively for HDRP instead of a modular package as it was before.

    For me, that's a clear sign of some problems with that "modular" approach. I am really concerned about the future of SRP in Unity, and also about all the new stuff (DOTS, etc).

    I don't know what we will have in the end. I think there are only 2 outcomes.

    1. It will be a flexible and powerful workflow, with its problems, but it will deliver.
    2. It will be an utter mess to work with and, as it was previously stated,
    "say goodbye to develop once deploy everywhere".

    Currently, I think Unity should get as much feedback as possible to avoid the second outcome.

    Personally, my overall feeling about SRP is mixed. I was hyped since the announce, but the more I work with it (currently LWRP for a mobile project) the more I like the built-in RP.

    But I think Unity needs a new rendering tech, but maybe the whole HDRP/LWRP thing wasn't a good idea...
     
    laeusnb, SugoiDev and sebastiansgames like this.
  7. Stardog

    Stardog

    Joined:
    Jun 28, 2010
    Posts:
    1,388
    As it stands, if I switch to HDRP, my graphics will be worse, because none of the assets I use support it. Some of these assets are complex, so they are waiting for sufficient demand before porting anything over, but then they'd have two complex assets to support which break with every unity update... It seems like it's not happening.

    Unity know how painful it is to support multiple pipelines since they didn't bother to put Shader Graph/etc into Built-In, and cancelled visual scripting for monobehaviours...
     
    laeusnb and SugoiDev like this.
  8. LIVENDA_LABS

    LIVENDA_LABS

    Joined:
    Sep 23, 2013
    Posts:
    235
    SRP = Pass the Buck ;

    Sounds great initially but a major mistake, don't forget ' Unity ' to unify not massacre . There are significant fundamental things missing from both pipelines and it will be, mark my words, another three years to be established in one form or another. There is a saying to keep an open mind, but not open enough so your brain falls out, and the ' democratization ' effort by way of SRP (in the manner it is being implemented now) is not good.
     
  9. konsic

    konsic

    Joined:
    Oct 19, 2015
    Posts:
    885
    I think eventually there will be grand unification of HDRP and LWRP into one SRP but it needs smaller steps to do so.
     
    LIVENDA_LABS likes this.
  10. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,675
    I would just keep evolving built in as the deploy everywhere unifying visual, and have optimized option with HD and LW srp, with builtin being the pivot to convert toward either. So start built in, convert to any srp for extra specialization. Best process imho.

    The reality is that built in is probably doom due to legacy roadblock anyway.
     
  11. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    25,941
    I actually think SRP is the right way forward. Anything where in a world, you can write in C# or subset of it, and it's faster than native C++, I think that world is amazing.

    We're not there yet but I think Unity staff will agree with my assessment that ultimately it's bringing AAA level engine development closer to the masses than it's ever been before.
     
  12. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,675
    there AAA dev

    and

    there is deploy everywhere

    Tough choice :D
     
    mmaclaurin likes this.
  13. wlad_s

    wlad_s

    Joined:
    Feb 18, 2011
    Posts:
    95
    Yeah, this word “yet” is the point :) It’s the uncertainty that’s really the problem now in this transition period. There’s something that isn’t ready yet (hdrp) and we don’t know what form it will have in the end (eg. with RenderWithShader or not?), and there’s something that’s production ready and working (builtin) but it looks like it’s slowly being abandoned (no new tools for it, like vfx, shader graph, planar pbr reflection).

    We’re already using our budget and so far it’s going fine with built-in, but now is almost the time to make a final decision about which rendering pipeline to use. It’s going to be harder to switch later. I’d much rather continue with built-in but what if they never make it work on PS5 and support it to 2024?

    I guess it’s like Brexit :D trying to do business without certainty.

    To be fair though, I haven’t really contacted and asked anyone at Unity about this yet but I’ll have to eventually. We can still afford a few months of work without deciding on the pipeline so wait and watch is our current strategy.
     
  14. BakeMyCake

    BakeMyCake

    Joined:
    May 8, 2017
    Posts:
    135
    Any change in Unity that allows me to take matters into my own hands(SRP) and, possibly, shoot myself in the foot is infinitely better than the current situation where I have to make do with the limited set of options that the devs decided necessary to implement. Many of the current long-standing problems will dissolve as soon as we receive direct means of fixing them ourselves.

    I just hope that UT sticks to their recent claims and really lets us get into the meat of it.That, and, well, that they will break their long standing tradition of implementing good ideas in dumb and poor ways.
     
  15. francois85

    francois85

    Joined:
    Aug 11, 2015
    Posts:
    744
    Is anyone using LWRP? I’m curious how stable it is and if possible post some images of what looks you have achieved with it. I’m really nervous switching to it even though Unity is calling it production ready.
     
  16. konsic

    konsic

    Joined:
    Oct 19, 2015
    Posts:
    885
     
    francois85 likes this.
  17. SebGames

    SebGames

    Joined:
    Dec 9, 2014
    Posts:
    35
    I can see that I’m far from being alone concerning the new SRP issues.

    Although the LWRP is in production, all this stuff around the SRP is still very new and young. I doubt this is going to stay like this for years. Otherwise, Unity would lose its developers in the long run. If the developers are not able to develop their games as they used to do, they will find other game engines, probably Unreal.

    Speaking of Unreal, has anyone here tried it? I haven’t. In Unreal, I think the developers don’t have to choice their rendering pipeline to be able to develop for many platforms.

    I’m still really surprised that Unity decided to choose to fork the portability that way. In my opinion, Unity wanted so badly to compete with Unreal on the graphic side to show the same quality, they created a “short-term infrastructure” to come up with something that was competing graphically. That comes with the drawbacks that we’re discussing. Unity is trying to be as good as Unreal about the graphics and this is what many developers want (with portability also). Unreal is probably taking too much market share on the graphics side and this probably why Unity has come up with the SRP. From my point of view, when it comes to AAA graphics being so important, the developers choose Unreal instead of Unity.

    For indie developers, the SRP is not where the money is. I wouldn’t be too worried at the moment. I’m more concerned about making profits than having AAA graphics ... but graphics are still important to make profitable games. For the moment, I will choose portability and stability over new functionalities.
     
  18. francois85

    francois85

    Joined:
    Aug 11, 2015
    Posts:
    744
    I’m currently working in both Unreal and Unity and I would have to say the graphics in both are very good.

    From what I’ve seen the SRP it’s very powerful and intuitive. My only hesitation to switch is stability witch generally comes with new features. Your post had many assumptions as to the reasons for the SRP but I believe it to give use more control.

    Both engines are amazing and competitive with good and bad. I believe feature and power wise they will both end up in the same place. So for me I have to ask myself the question, how do I want to work given I can achieve similar results for what is required. And that is where unity wins. Now there are cases where unreal is the better software for the job and I will use it but given the choice I would pick Unity.

    .