HDRP new post processing extending

How can I write my own effects for new post processing in HDRP?

3 Likes

Yeah, I’m interested too. I had nice effects for PPV2 (glitches, some other effects for immersion), but now they just don’t work.

This will come in a future version, current package don’t allow that.

Thank you, I was waiting for this answer :slight_smile:

Future version as in approx ? weeks ? months ? I’m using post-processing for game data effects (cloud systems, fog of war, etc…). Between this, shader graph instancing not taking in account material property blocks parameters, not being able to write custom vertex nodes and custom nodes not working anymore anyway, I’m a little bit stuck.
Refraction on older cards might work now, but it’s one step forward, two steps backward…

2 Likes

@SebLagarde

This will come in a future version, current package don’t allow that.

There’s several projects on Github which seem to show custom post-processing FX - including one by Keijiro.

Maybe it’s more a case of “it’s possible but expect breakages and API changes”?

It’s not about that. Those custom PP effects, including one from Keijiro, work on PPv2 which is extendable by design. This thread is about HDRP 5.3+ which uses PPv3 which doesn’t have this functionality (yet) and you can’t use PPv2 anymore on 5.3+ HDRP (it does nothing there).

PPv3?

Bloody hell. I’d only just come to terms with v2!

1 Like

Wow, are there any major updates to PPv2 to actually change its version to PPv3?

Can’t imagine what they did add, cause PPv2 was pretty solid.

So - what’s the status of post-processing v2? There were major issues with single pass stereo last time I checked making some effects unusable with VR.

PPV2 no longer works in HDRP. PPv3 was made specifically for HDRP, to better work with physically correct lighting and other features.

Thanks - but I was more enquiring about whether PP v2 is still being actively developed. I’m hoping it’s not deprecated so soon after release.

Will v3 be recommended for anything other than HDRP? Is it the future?

(also - how do we try it out? I tried pulling SRP master from Github but I couldn’t get it working)

You can’t use it outside new HDRP (yet?) it’s integrated inside this pipeline

  • This only work for Unity 2019.2 so if you gotta have the latest alpha or download it
    Download the 5.3.1-preview - 6.0.0-preview package from Github or add the staging repo to your projects manifest and manually type in the version number (This is because adding the staging repo to a manifest in 2019.2)
    (any version beyond 6.0.0 doesn’t work with the current alpha version you get errors as you did with the master branch)

PPV2 still get updates from time to time but not as much. Don’t think it needs any major updates currently. Still works fine for Unity 2017 to the current version and beyond for the default render pipeline as well as the only post processing for LWRP, which uses a limited selection from the set.

Don’t think it needs any major updates currently

Can’t remember the details but I had to basically give up on having bloom and single pass stereo on at the same time. And in the end I had to give up on bloom entirely as the frame-rate hit using post-processing with Daydream was too much without single-pass.

I might be misremembering some of the details here as this was frantic pre-launch optimisation work but I definitely didn’t feel that PPv2 was production ready - at least for mobile VR.

Hi,

There is no plan to make any improvement on PPV2. Just bugfix / maintenance.
There is no PPV3 in itself, this is how we call the HDRP postprocess. We still use this name as opposition to PPV3 but really it is not a package and is just part of the HDRP pipeline and such can’t be use at other place. We fully drop the support of PPV2 for HDRP. Motivation is better everything (better integration with PBR, better quality, better memory usage, better performance etc…). This is still in progress work. Later a dedicated version will be done for LW as well which will not be computed based and will better fit mobile. VR will be better handled for postprocess and PPV3 for LW and HD. For LW PPV2 should still be compatible (so you could chose between V2 and V3). Customization of PPV3 should come for 2019.2.

7 Likes

Ok, since almost all my shaders use custom nodes (and no, you cannot recreate them with normal nodes), and I make heavy use of custom post processes, my project is not launching in 2019.1b and will never be. Means I can already use the 2019.2a without any guilt or regret.

Better everything certainly sounds great.

But can you please make sure that moving from one to the other is an easy process?

In other words, please use the same MonoBehaviours / APIs and the same profiles. I don’t care if you run different shaders in the background, or even if the actual C# implementations are completely different - just don’t make me assign different components to my cameras (in our case, the one volume we use is a child object of the camera), and don’t make my existing profiles obsolete.

I’m currently moving from v1 to v2 and it’s a bit of a nightmare because we primarily use PostProcessing for color grading, and the profiles are not only not compatible but there is also no way to go from one to the other without basically doing the whole color grading process manually again (we also change some parts of the color grading from script during gameplay, so LUTs are only of very limited help).

Out main motivation to move from v1 to v2 is (hopefully) better performance and less shader keywords. Currently we have v1 and v2 in the project and that adds a lot of extra shaders, so we would like to get rid of v1 (or return to v1 and get rid of v2).

Aside of being more modern / better maintained, v2 doesn’t add anything of value for us (in particular, the whole concept of volume blending is something that we’ll never use in this project). I hope performance is actually better in v2 than v1; at least for bloom and color grading.

I’m not sure I fully understand this. So, for VR, PPV3 will be best if we use LW or HD?

So far, it looks like HDRP isn’t suitable for VR (it added 5ms per frame in an empty scene on a 980Ti when I tried). For now, we’ll stay with legacy but might move to LWRP at some point. Our target platforms are PC, Mac, Linux and PS4; we also support mobile on side projects but for the time being strip everything that adds to build size / costs performance, including post-processing.

You will have to redo your post with PPv3 for HDRP, it won’t carry over because they are set up differently.

We don’t have any info on how LWRP’s PPv3 will be so not sure if it will be the same process. Sebastian mentioned that we will be able to use both for LWRP so maybe the same profiles will be compatible between the two.

1 Like

@SebLagarde How about built-in pipeline? Is there any PPv3 for built-in pipeline?