Search Unity

HDRP new post processing extending

Discussion in 'Graphics Experimental Previews' started by Chaiker, Feb 4, 2019.

  1. Cascho01

    Cascho01

    Joined:
    Mar 19, 2010
    Posts:
    1,094
    I have installed Unity 2019.1.0f2 with HDRP 5.7.2

    How can I change parameters by script (Namespace)?
     
    Last edited: Apr 29, 2019
  2. iamarugin

    iamarugin

    Joined:
    Dec 17, 2014
    Posts:
    110
    Same problem here. It is very frustrating. I think PP extending significantly more important for the developers, than something like raytracing. Nobody asking for shader graph integration, just give us simple api (ppv2 api was great), even it will change 100 times in the future and will be not so performant at this moment.
     
  3. rizu

    rizu

    Joined:
    Oct 8, 2013
    Posts:
    1,008
    *I'm asking for SG integration, it's a real bummer that we don't have PP Graph out of the box. People hacked this for PPv2 already but then HDRP PP became a thing and those 3rd party workarounds don't work anymore here.

    For comparison, UE4 has had PP node graph support from day one :)
     
  4. Grimreaper358

    Grimreaper358

    Joined:
    Apr 8, 2013
    Posts:
    472
    Felt the same way for a second there but remembered UE4 was a full release and HDRP is still in preview, so it's not really a fair comparison. If that was the case then PP in Shader Graph would have to be rebuilt for the new Prost Processing pipeline.
     
  5. iamarugin

    iamarugin

    Joined:
    Dec 17, 2014
    Posts:
    110
    It doesn't work, because there is no API. So we need API in the first place, to do something.
     
  6. rizu

    rizu

    Joined:
    Oct 8, 2013
    Posts:
    1,008
    I've already manually modified HDRP PP, I know the deal :) Just wanted to point out that there are people who would want SG PP.
     
  7. KammutierSpule

    KammutierSpule

    Joined:
    May 23, 2017
    Posts:
    4
    Is there any update how to create new plugins for HDRP?
    Will it allow extending just for PPv3 or there will be a new specific way (not using PPv3) to create effects?
     
    iamarugin likes this.
  8. Raul_MadGoat

    Raul_MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    156
    There will probably be API to extend the PPv3 in the future, just like the PPv2 had. Looking through the source code of PPv3 on their github, there is a comment line "todo - user effects go here" or something like that in the place where the effect rendering gets handled, so it definitely seems like it's coming ^^.

    We're also looking forward to it.
     
    iamarugin likes this.
  9. dgoyette

    dgoyette

    Joined:
    Jul 1, 2016
    Posts:
    1,696
    Just to make sure I haven't misread anything here, I understand it's not currently possible to create post-processing effects in HDRP 5.13, the way I was doing under PPv2 using PostProcessEffectRenderer?
     
  10. iamarugin

    iamarugin

    Joined:
    Dec 17, 2014
    Posts:
    110
    Yes, it is not currently possible
     
  11. Raul_MadGoat

    Raul_MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    156
    Right! There is no API for it currently. I mean, I get that HDRP is experimental and hardly production ready, and is still being worked on a lot, but releasing the new HDRP with PPv3 with no option to add custom effects (on which a lot of projects and 3rd party assets like ours relies on) and without at least letting us use PPv2 as a work around (though from my understanding it is not possible due to implementation limitations.) still shocks me :D

    To us it looks like the whole thing was rushed out for 2019.1...

    Edit: if you have the knowledge its still possible to add support yourself if you can't wait for the official API. Looking at the source, it doesn't seem that hard, but for us that's no good since we use the PP custom effect API for asset store products, and we can't rely on such "hacks" for those.
     
    fherbst and iamarugin like this.
  12. andybak

    andybak

    Joined:
    Jan 14, 2017
    Posts:
    129
    > we can't rely on such "hacks" for those.

    I think it's acceptable in this case. Anyone brave enough to buy assets for HDRP - which is after all still in preview - surely would accept the need for temporary workarounds until there's official support.

    Personally I've been hacking around the lack of custom blocks in the VFX graph and I've got no qualms about it. As soon as there's official support I'll hopefully change to doing it properly. And if I can't for any reason then I'm prepared to hack my way round artificial restrictions for as long as I need to. I'm a firm believer in the "we're all consenting adults" approach to encapsulation and access control.
     
    Raul_MadGoat likes this.
  13. Raul_MadGoat

    Raul_MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    156
    I get your point, and is a fair one, after all that's why the pipelines are open source to modify them to fit your needs. However we as a studio have other tasks and projects that also need to be handled (for example most of our work hours now go into our game project which is due to release this summer), so for us it might not be the best practice to spend hours just to implement a feature that will be added anyway in a unity update sooner or later, just to have to revert everything back, spending even more time to do it the proper way (which in our case was already working out of the box and was easily implemented for PPv2).

    Also since we're talking about adding missing parts to the pipeline code itself, the "fix" might not be easy to ship in an asset store product since the HDRP itself comes as a package, and the "hacking" part will end up being handled by the customer by tinkering with the package's source (which in our case, most of customers are not coding savvy and come from archviz / art / cinematics fields)

    So in the end it really depends on what you are trying to achieve with the SRP and where does your implementation end up being used.

    Edit: This is in no way hate directed towards Unity or you, just my and my team's point of view regarding the situation.
     
    Last edited: May 15, 2019
    iamarugin likes this.
  14. Gollunk

    Gollunk

    Joined:
    Oct 19, 2014
    Posts:
    41
    I can't find ppv3 anywhere...
     
  15. Raul_MadGoat

    Raul_MadGoat

    Joined:
    Jan 10, 2015
    Posts:
    156
    PPV3 is integrated into the HDRP itself, not a separate package. It's the "Volumes" that exist in HDRP. Now they contain the postprocessing effects too.
     
    Gollunk likes this.
  16. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    25,212
    Also to add to this: people using HDRP should uninstall any PPV2 (it isn't working and will not work)
     
    Raul_MadGoat likes this.
  17. Jesus

    Jesus

    Joined:
    Jul 12, 2010
    Posts:
    477
    In case you're still looking for an answer

    Cross-posting this from the HDRP feedback thread, hope nobody minds

    using UnityEngine.Experimental.Rendering.HDPipeline;

    Then I set a volume with all the other variables like this, then assign it in inspector:

    public Volume AdjustablePostProcessingVolume;


    This is the basics. You might want to call it something other than tmp if you're doing multiple things all under void Update or whatever, but this is how you get values.
     
    Cascho01 likes this.
  18. Thrawn75

    Thrawn75

    Joined:
    Nov 16, 2014
    Posts:
    2,141
    You might want to edit your last post here just to clarify the current status quo (it's locked).
    Likewise, Unity should update this page here with any relevant info about that code compatibility.
    Cheers
     
    Last edited: May 28, 2019
  19. andybak

    andybak

    Joined:
    Jan 14, 2017
    Posts:
    129
    I second this. With the current complex state of affairs related to SRPs and related features, it's fairly critical to keep online docs up to date.