Custom post-processing effects with new HDRP workflow

I tried following this tutorial that stated that the effects would work with the new Scriptable Render Pipelines, but I can’t seem to find the effect under my Scene settings object with a Volume script.

Is it still possible to write custom image effects with the new workflow and if yes, what am I missing?

Hello,

This is a work planed for 2019.3

1 Like

Hi, I am in desperate need for custom post processing effect too.
In roughly which iteration of the 2019.3a will the custom post processing be supported?

Hi remi,

Given 2019.3 is already in alpha, can you please expand on how custom effects implementation will (broadly) require changes? I assume you guys already have an idea, and any information you can share would be greatly appreciated by the number of developers who create third party post-processing effects for users.

5 Likes

Hi , any updates on this ? i am currently looking to implement my own custom effects but seems like the new way doesn’t allow to access the classes needed due to protection level , i tried inheriting from the “VolumeComponent” class but it only adds the custom effect’s name and doesn’t expose a “Render” function to override to do the stuff needed , any kind of info would be appreciated

1 Like

I am also in the desperate need of custom post processing in hdrp in 2019. Can we please get an update or some info at least?

2 Likes

Just posting to add my voice to this. I want to make a custom post-processing effect with the new HD Renderpipeline. But I don’t really know where to start. Are there any tutorials on how to work with custom post-processing effects in HDRP?

I’m guessing that is what Remi means by they are working on it for 2019.3. Unity doesn’t have the “infrastructure” to customize the post-processing effects yet?

This is currently a huge hole in HDRP and keeps it from being a serious system for game development. Without custom post-process capability HDRP will remain nothing but a shiny toybox.

3 Likes

I posted it elsewhere but Keijiro has come up with a technique. Not sure where on the “sane” to “hacky” spectrum it sits: GitHub - keijiro/HdrpAovTest: Custom post processing effect with the AOV output feature of HDRP

Any official word from Unity on whether this is good way forward would be nice. (any official word on post processing would be nice right now)

In case that anyone needs custom post processing & hdrp in 2019.X - I wrote small step-by-step tutorial how to achieve this by actually modifying the pipeline itself: Custom post-processing using HDRP in Unity 2019.1–2019-.2 | by Marek Oleksiak | Another Angle Games | Medium

3 Likes

Thanks @nehvaleem !

It doesn’t look like its implemented in 2019.3b (beta). Are we sure this is coming in 2019.3? Or has it been pushed to a later release?

1 Like

Yeah, I would like to know as well. I dont’ like the fact that it has not been mentioned in any release log yet.

@remi_unity163 Any news on this one? Will custom pfx be available as the HDRP goes out of preview?

I managed to get it working this morning: https://github.com/IxxyXR/HDRP-Custom-Post-Processing-Test

I had to edit manifest.json to get the next version 7.1.1 of HDRP a bit early and comment out a block of XR related code that was causing an error - but custom PP works in HDRP as of today!

1 Like

Any documentation?

I belive it is using custom passes that recently were merged into hdrp on github. More info is available here: https://github.com/Unity-Technologies/ScriptableRenderPipeline/pull/4317

I’m not entirely clear myself at the moment (I’m writing this from memory as I’m not near my Unity laptop now) but I think Custom Passes are slightly different from Custom Post Processing Effects with the latter being slightly simpler to set up.

Here are the three files to refer to in my repo:

https://github.com/IxxyXR/HDRP-Custom-Post-Processing-Test/blob/master/Packages/manifest.json

https://github.com/IxxyXR/HDRP-Custom-Post-Processing-Test/blob/master/Assets/NewPostProcessVolume.cs

https://github.com/IxxyXR/HDRP-Custom-Post-Processing-Test/blob/master/Assets/New Post Process Shader.shader

Procedure was something like:

  1. Edit manifest.json to reference 7.1.1 of “com.unity.render-pipelines.high-definition” and “com.unity.shadergraph” as that version doesn’t currently show up in the package manager UI. After Unity finishes loaded those packages find there is an #if block in one of the scripts that might throw an error - I just commented it out for now as it was XR related

  2. Right click and create a new Post processing script (it’s a specific option in the create menu) and a PP shader (or use the scripts in my repo as an example). Check the shader references the script name correctly (see line 21 in mine)

  3. Go to Project Settings/HDRP Defaults and scroll down to the bottom. Add the effect to the section (
    Before Rendering/Before Transparent/Before PostProcess) that corresponds to what you put in your cs script (see line 16 in mine)

  4. Add a Volume in your scene. Your effect should now appear in “Add overrides” as a new item under Post Processing/Custom

I think this should work on 2019.3 but I used the 2020 alpha.

I’ll try and remember check this later for accuracy and edit if I’ve missed a step.

2 Likes

2019.3b4 is now out and with it HDRP 7.1.1 now appears in the package manager: Redirecting to latest version of com.unity.render-pipelines.high-definition

“Added Custom Post Processes with 3 injection points: Before Transparent, Before Post Process and After Post Process”

I’m just testing it works as expected now (waiting for the damn shaders to compile!)

3 Likes

Great news, is this same as custom forward render structure in LWRP ?