Search Unity

Custom post-processing effects with new HDRP workflow

Discussion in 'Image Effects' started by themeshpotato, Jun 4, 2019.

  1. themeshpotato

    themeshpotato

    Joined:
    Apr 11, 2018
    Posts:
    39
    Last edited: Jun 4, 2019
  2. remi_unity163

    remi_unity163

    Unity Technologies

    Joined:
    Jun 19, 2018
    Posts:
    13
    Hello,

    This is a work planed for 2019.3
     
    themeshpotato likes this.
  3. mashixuan8

    mashixuan8

    Joined:
    Nov 4, 2014
    Posts:
    7
    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?
     
  4. GoGoGadget

    GoGoGadget

    Joined:
    Sep 23, 2013
    Posts:
    651
    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. bloodthirst69

    bloodthirst69

    Joined:
    Oct 1, 2017
    Posts:
    4
    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
     
    themeshpotato likes this.
  6. nehvaleem

    nehvaleem

    Joined:
    Dec 13, 2012
    Posts:
    20
    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?
     
    Velo222 and themeshpotato like this.
  7. Velo222

    Velo222

    Joined:
    Apr 29, 2012
    Posts:
    1,292
    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?
     
  8. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,329
    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.
     
    Last edited: Aug 7, 2019
    BrandStone and themeshpotato like this.
  9. andybak

    andybak

    Joined:
    Jan 14, 2017
    Posts:
    162
    I posted it elsewhere but Keijiro has come up with a technique. Not sure where on the "sane" to "hacky" spectrum it sits: https://github.com/keijiro/HdrpAovTest

    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)
     
  10. nehvaleem

    nehvaleem

    Joined:
    Dec 13, 2012
    Posts:
    20
    manutoo, themeshpotato and themdubs like this.
  11. themeshpotato

    themeshpotato

    Joined:
    Apr 11, 2018
    Posts:
    39
  12. mutp

    mutp

    Joined:
    Oct 1, 2018
    Posts:
    3
    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?
     
    themeshpotato likes this.
  13. themeshpotato

    themeshpotato

    Joined:
    Apr 11, 2018
    Posts:
    39
    Yeah, I would like to know as well. I dont' like the fact that it has not been mentioned in any release log yet.
     
  14. BitAssembler

    BitAssembler

    Joined:
    Jul 13, 2017
    Posts:
    59
    @remi_unity163 Any news on this one? Will custom pfx be available as the HDRP goes out of preview?
     
  15. andybak

    andybak

    Joined:
    Jan 14, 2017
    Posts:
    162
    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!
     
    LIVENDA_LABS likes this.
  16. jacodavis

    jacodavis

    Joined:
    Wednesday
    Posts:
    4
    Any documentation?
     
  17. nehvaleem

    nehvaleem

    Joined:
    Dec 13, 2012
    Posts:
    20
  18. andybak

    andybak

    Joined:
    Jan 14, 2017
    Posts:
    162
    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.
     
    themeshpotato likes this.
  19. andybak

    andybak

    Joined:
    Jan 14, 2017
    Posts:
    162