Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Official New Post-processing Stack (Pre-Release)

Discussion in 'Image Effects' started by Chman, Oct 10, 2016.

  1. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    posting how it should look helps a lot too
     
  2. gskinner

    gskinner

    Joined:
    Aug 28, 2014
    Posts:
    43
  3. SoftwareGeezers

    SoftwareGeezers

    Joined:
    Jun 22, 2013
    Posts:
    902
    Very pleased with the bloom quality, but nothing builds on 5.5. Build fails trying to include the package. Also want to mention this doesn't work on mobile in the description of the package. Dunno whether it's worth waiting or creating my own bloom.

    Nice idea though!
     
  4. Assembler-Maze

    Assembler-Maze

    Joined:
    Jan 6, 2016
    Posts:
    630
    Anyone else has problems with vegetation and the new AO settings in this post-proc stack? I didn't had those problems with the cinematic effects AO.

    For me it is completely unusable, it creates all kinds of weird artefacts with 'force forward on' and a lot of noise on vegetation when we have the default settings.

    Like this:
    NoisedBush.png

    With the 'force forward' I get all kinds of weird flickering of AO when moving around.

    Any workarounds? At the moment I am thinking to integrate the old cinematic one in stack.
     
    Last edited: Dec 27, 2016
  5. xBoxRedDot

    xBoxRedDot

    Joined:
    Aug 8, 2016
    Posts:
    6
    Is project dead? No changes in github from 1 month
     
    JakubSmaga and StaffanEk like this.
  6. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    It's not a "project", it's Unity's official post process. Secondly, it's holiday season and alpha/beta.
     
  7. StaffanEk

    StaffanEk

    Joined:
    Jul 13, 2012
    Posts:
    380
    Is there a technical reason why Unity removed the cinematic image effect dithering from the post-processing stack?
     
  8. rsodre

    rsodre

    Joined:
    May 9, 2012
    Posts:
    229
    REQUEST: Let us choose if the Post Effects will be applied before or after canvases in "Screen Space - Camera". Currently it'd always after.
     
  9. Vancete

    Vancete

    Joined:
    May 3, 2010
    Posts:
    198
    That would be VERY useful.
     
  10. hakankaraduman

    hakankaraduman

    Joined:
    Aug 27, 2012
    Posts:
    353
    I can't build my project when using this stack, it stucks on Shader Compiler section. I'm building for android
     
  11. JakubSmaga

    JakubSmaga

    Joined:
    Aug 5, 2015
    Posts:
    417
    Is Unity going to add "Image Effects Volume/Trigger" like the UE's Post Process Volume? Reference:
     
    Lars-Steenhoff and Alverik like this.
  12. Adam-Bailey

    Adam-Bailey

    Joined:
    Feb 17, 2015
    Posts:
    232
    Since you store the post process settings in different profile files it would be fairly trivial to make a trigger that switches them out. It would be nice it there was some built in support for lerping between different profiles though.
     
    Alverik likes this.
  13. Chman

    Chman

    Unity Technologies

    Joined:
    Feb 6, 2010
    Posts:
    721
    Yes, definitely. No ETA.

    Yes multi-editing support would be a nice feature to have. If I remember well, we disabled it entirely for this stack because a few widgets didn't behave correctly and we didn't have time to fix them. On the other hand, we're working on something that will help for cases like yours.

    Could you try with the latest trunk ? We fixed a few things with DOF and it may have resolved this issue...

    What's the error message ?

    Do you have a simple repro-scene to send me so I can debug it directly ?

    No. Not everything we work on is public, what we're working on right now is too big and sensitive to be pushed to github until it's ready. That, plus holiday season.

    Give it a few minutes (takes 2 minutes on my machine but I've seen it take ~10 on slower computers). Because the uber shader has a lot of variations it can slow down the first build unfortunately... Subsequent builds should be very fast though, unless you're building from scratch every time.

    We're evaluating alternatives to avoid long build times in the future.

    :)
     
    elbows, Alverik, Baldinoboy and 2 others like this.
  14. Baldinoboy

    Baldinoboy

    Joined:
    Apr 14, 2012
    Posts:
    1,526
    Thank you for the info and this wonderful asset. Works incredible for me. Thanks!
     
    Alverik likes this.
  15. Assembler-Maze

    Assembler-Maze

    Joined:
    Jan 6, 2016
    Posts:
    630
    Sorry, I don't have a small repo, but I think I can rig up one with the vegetation I'm using. Where should I submit it when I have it?
     
  16. Chman

    Chman

    Unity Technologies

    Joined:
    Feb 6, 2010
    Posts:
    721
    If you could that would be highly appreciated :)
    As for submitting, dropbox, google drive, anything really and just send me a link via private message when it's up ! Or, if you really have no way of uploading it send me a private message we'll figure it out.
     
  17. Player7

    Player7

    Joined:
    Oct 21, 2015
    Posts:
    1,533
    Textures 12.8 mb 14.5%
    Meshes 4.4 mb 5.0%
    Animations 16.8 kb 0.0%
    Sounds 0.0 kb 0.0%
    Shaders 60.5 mb 69.0%
    Other Assets 1.3 mb 1.4%
    Levels 218.4 kb 0.2%
    Scripts 3.2 mb 3.7%
    Included DLLs 5.3 mb 6.1%
    File headers 82.2 kb 0.1%
    Complete size 87.7 mb 100.0%

    Used Assets and files from the Resources folder, sorted by uncompressed size:
    58.3 mb 66.4% Assets/Plugins/PostProcessing/Resources/Shaders/Uber.shader


    jeez.. what on earth is it in including (post processing textures only come to like 30mb), its a shame the build report is buried in the middle of no where on my file system in some stupid editor log along with everything else (not even in seperate file or the actual project location or release folder) and with zero tooling to narrow down wtf is actually included in builds when doing them, but after wondering howcome my default builds jumped in size I had to go find out.. and now I know wtf is it including in the shader file? is it just the textures? As I'm not even any of those textures for fx.

    Also can someone sort out the Post Processing component.. when you disable it in editor component view it completely screws up the list.. doesn't keep scrollbar position, like if you enable/disable checkbox you shouldn't have to move mouse position everytime you enable/disable it.. because its shifting the positioning.


    ...never seen any other component exhibit this weird behavior.

    "Is Unity going to add "Image Effects Volume/Trigger" like the UE's Post Process Volume? Reference:"

    Is Unity going to add anything Unreal does better..I'm just jealous of their built engine/tooling features
     
  18. Chman

    Chman

    Unity Technologies

    Joined:
    Feb 6, 2010
    Posts:
    721
    Shader permutations (~4000) for the Uber shader. As explained before, we're looking into optimizing this. In the meantime you can remove keywords you don't need from the shader itself.
    Scroll up, look at the camera component. It's not the scrollbar position that changes, it's the camera component being populated with command buffers that makes the inspector grow in height.
    Any component that makes use of command buffer will do the same. It can be annoying but it's not directly related to post-processing. Fwiw, once you toggle a checkbox it gets keyboard focus (blue outlines on the widget), you can toggle it again quickly by pressing the space bar.
     
    Meceka, Alverik and tanoshimi like this.
  19. Player7

    Player7

    Joined:
    Oct 21, 2015
    Posts:
    1,533
    Explained before? no idea I haven't read through this entire thread, perhaps it was another thread on this post processing stack that I posted to.. no idea..

    Anyway I did that and the Shaders in build come 2.2mb now, at least now the shaders aren't bigger than the game itself ;P I only needed AA and AO (you still gonna work on the AO near/far planes etc?

    I see so its the camera component that needs a bit of gui update so that removing/adding command buffers to it doesn't cause this. Maybe instead of removing the "x command buffers" when there is none, maybe it could just say "0 command buffers" at least then when its not expanded out, and you turn off something like the post processing fx it doesn't cause this glitch of it contracting and not really refreshing things until you move something like say the scrollbar.
     
  20. hakankaraduman

    hakankaraduman

    Joined:
    Aug 27, 2012
    Posts:
    353
    Hi again, I'm a shader programming noob so I need your help.

    At the above comments I saw someone commented out unused features of the stack so they get lower build sizes. I wanted to try the same, I did this;

    Code (CSharp):
    1. #pragma multi_compile __ UNITY_COLORSPACE_GAMMA
    2.         /*#pragma multi_compile __ EYE_ADAPTATION
    3.         #pragma multi_compile __ CHROMATIC_ABERRATION
    4.         #pragma multi_compile __ DEPTH_OF_FIELD DEPTH_OF_FIELD_COC_VIEW*/
    5.         #pragma multi_compile __ BLOOM
    6.         #pragma multi_compile __ BLOOM_LENS_DIRT
    7.         #pragma multi_compile __ COLOR_GRADING COLOR_GRADING_LOG_VIEW
    8.         #pragma multi_compile __ USER_LUT
    9.         /*#pragma multi_compile __ GRAIN
    10.         #pragma multi_compile __ VIGNETTE_CLASSIC VIGNETTE_ROUND VIGNETTE_MASKED*/
    But obviously this is wrong because the rendering is broken on android s6.

    Can you @Chman or some someone else who knows about it, show me the way so I can disable those commented out features correctly. Thanks
     
  21. BHMW

    BHMW

    Joined:
    Feb 8, 2014
    Posts:
    16
    I love the new effects, great work!

    However, this post processing component is creating GC Alloc even with no effects enabled, just with the post processing component enabled.

    I have checked it in the standalone build with the profiler so it isn't something that only happens in the editor.

    The GC alloc is coming from GUI.repaint and I assume that this is related to what rsodre said and that the effects are being applied after screen space - camera.

    Anyone know anyway to get around this or we just have to wait for more options?
     
  22. bakanekofr

    bakanekofr

    Joined:
    Feb 28, 2014
    Posts:
    122
    It seems that the amount of blur in the depth of field image effect is resolution dependent. I'm having a lot more blur in 4K than in 1080p. Any chance for a fix?

    Using Unity 5.5 on Windows with the post processing stack from GITHub (Jan 4, 2017).

     
    JakubSmaga and Baldinoboy like this.
  23. Chman

    Chman

    Unity Technologies

    Joined:
    Feb 6, 2010
    Posts:
    721
    Related topic and solution on github for those who are waiting for an answer to this question.
    I don't see anything wrong with that. How "broken" is the rendering ? Can you post a screenshot ?
    PostProcessingBehaviour does have a OnGUI method for debug features. Unfortunately the GC alloc seems to be unavoidable with current versions of Unity and has nothing to do with what @rsodre said. Even if you empty-out the function it'll create garbage... I'll ask around.

    In the meantime, if you don't use debug features you can simply comment the whole method and it'll be back to 0 GC alloc per frame.
    Related topic on github.
     
  24. Chman

    Chman

    Unity Technologies

    Joined:
    Feb 6, 2010
    Posts:
    721
    Fixed in the latest version.
     
  25. BHMW

    BHMW

    Joined:
    Feb 8, 2014
    Posts:
    16
    I can confirm that the new version has 0 GC alloc per frame now.

    Thanks! that was quick :D
     
    tanoshimi, Gametyme and Chman like this.
  26. hakankaraduman

    hakankaraduman

    Joined:
    Aug 27, 2012
    Posts:
    353
    Hi, here are screenshots with the stack enabled and disabled.
     

    Attached Files:

  27. Ar7ific1al

    Ar7ific1al

    Joined:
    Jan 21, 2014
    Posts:
    54
    Is the screen-space reflections effect supposed to work with WebGL? Bloom and others appear to work in WebGL, but not screen-space reflections.
     
  28. laurentlavigne

    laurentlavigne

    Joined:
    Aug 16, 2012
    Posts:
    6,223
    bug when dealing with overlapping cameras, all with the fx stack and AO turned on, the one with max depth has clear flags set to depth only (to get AO in the one behind) = the image only shows grayscale AO, as if in debug mode
    #869592
    (it looks cool, I may keep it like this - feature!)
    Screen Shot 2017-01-11 at 6.36.47 PM.png
     
  29. laurentlavigne

    laurentlavigne

    Joined:
    Aug 16, 2012
    Posts:
    6,223
    Another bug with AO:
    shader for the glowy thing: Mobile/Particle/Additive


    Screen Shot 2017-01-11 at 10.32.19 PM.png
     
  30. gskinner

    gskinner

    Joined:
    Aug 28, 2014
    Posts:
    43
    Just move the Post Processing component above the Camera, problem solved?
     
  31. Player7

    Player7

    Joined:
    Oct 21, 2015
    Posts:
    1,533
    It would trigger my OCD *shudders* :D ... I mean can you imagine any other ordinary component being above something as far more important as the Camera component... this is prime screen real estate we are talking about. Besides i'd have to [rmb] [move up] like a lot... an awful lot to get it up above the camera component anyway. Unity haven't bothered adding better built in functionality for dragging components positions around yet, maybe 2017 they do some gui improvements. *I do know the functionality exists*
     
    Last edited: Jan 13, 2017
  32. laurentlavigne

    laurentlavigne

    Joined:
    Aug 16, 2012
    Posts:
    6,223
    How is the impact of the stack on perfs of something like an ipad air 2?
     
  33. Atair

    Atair

    Joined:
    Oct 16, 2015
    Posts:
    42
    Any chance the Eye Adaption can have a fallback to work without compute shaders? Because on macOS (elcapitan) it wont build, even when the eye adaption is off.. And Metal is still buggy (at least on 10.11.6)
     
    OCASM likes this.
  34. laurentlavigne

    laurentlavigne

    Joined:
    Aug 16, 2012
    Posts:
    6,223
    Roughly a 2x slowdown.
     
  35. zelmund

    zelmund

    Joined:
    Mar 2, 2012
    Posts:
    437
    hi there
    in Post Processing Behaviour script there is a code:

    void OnPostRender()
    {
    if (profile == null || m_Camera == null)
    return;

    m_Camera.ResetProjectionMatrix();
    }

    can you tell me, why camera reseting reprojection matrix? we have a custom matrix, which we dont want to be reseted.
     
    StaffanEk likes this.
  36. syenet

    syenet

    Joined:
    May 13, 2013
    Posts:
    47
    Last edited: Jan 17, 2017
  37. Alex_4x

    Alex_4x

    Joined:
    Feb 2, 2014
    Posts:
    21
  38. ftejada

    ftejada

    Joined:
    Jul 1, 2015
    Posts:
    695
    Hi!!

    I'm watching in some videos and here in the forum the component "Post Processing Behavior"

    I import the asset from the store version, the most updated version (1.1), and I can not find that component to add it.

    I'm using Unity 5.5.

    What happens, do something wrong?

    regards
     
  39. ftejada

    ftejada

    Joined:
    Jul 1, 2015
    Posts:
    695
    Watch it, sorry!

    I do not read the first page of the thread ...

    regards
     
  40. Chman

    Chman

    Unity Technologies

    Joined:
    Feb 6, 2010
    Posts:
    721
    Do you happen to have Bloom enabled ?
    That's not easily quantified. It depends on what effects you enable. It can be as low as a few hundredth of a millisecond to a few milliseconds... It has a cost, like anything else you want to render. It's all about your allocated performance budget for post-processing. e.g. if your scene is simple and only takes 6ms of GPU time to render on your target hardware then, assuming your target is 60fps, that leaves you with 10ms for post-processing.
    No plan to add a non-compute fallback to Eye Adaptation. Metal support is still being improved.
    It's reset because of TAA. But that's a good point, I'll write it down.
     
  41. Chman

    Chman

    Unity Technologies

    Joined:
    Feb 6, 2010
    Posts:
    721
    WebGL is currently untested with post-processing. As far as I know, SSR doesn't work on this platform.
    If this is the issue I'm thinking of, then it's been fixed in 5.6 (I may be wrong, don't take my word on it). Also, if you're using the forward rendering path and have MSAA enabled you may want to disable it for now.
    I'm not exactly sure what the bug is by looking at the tiny screenshot but I would check the Depth & Normal debug views in the debug panel to make sure it's not an issue with the particle shader...
     
  42. Chman

    Chman

    Unity Technologies

    Joined:
    Feb 6, 2010
    Posts:
    721
    If you want to try it, there's an experimental branch with dithering available on Github :) It should noticeably better than the old one from the Cinematic Image Effects package.
     
  43. Ar7ific1al

    Ar7ific1al

    Joined:
    Jan 21, 2014
    Posts:
    54
    I can confirm SSR does not work with WebGL builds (1.0 and 2.0 alike). Strangely enough, SSR works with WebGL 2.0 emulation in the editor.
    I can confirm at least that Chromatic Aberration, Bloom, and DoF work in WebGL builds in 1.0 and 2.0.
     
  44. Invertex

    Invertex

    Joined:
    Nov 7, 2013
    Posts:
    1,539
    I was reading this today and had a thought... What about having it sample the pre-processed real-time GI maps? Don't those maps store information about how much it's occluded for a given direction or something like that? So you could sample the currently set skybox texture based on whether your reflecting angle has an occluded GI value.
     
  45. Orion_Reed

    Orion_Reed

    Joined:
    Aug 14, 2012
    Posts:
    39
    I assume there's an obvious answer to this, but I can't find it anywhere online...

    Will we be able to integrate other post-processing effects into this workflow? E.g. will graphics programmers be able to release effects on the asset store that would automatically plug themselves in this asset-based workflow?

    It would be awesome if we could have an asset driven workflow for all newly released effects or be able to integrate them by hand, animating transitions would become a stupidly fun experience.
     
  46. bakanekofr

    bakanekofr

    Joined:
    Feb 28, 2014
    Posts:
    122
    Any plan for adding color bleeding to the SSAO? (such as on SSSSAO or HBAO).
     
    arnoob, JakubSmaga and RomBinDaHouse like this.
  47. hakankaraduman

    hakankaraduman

    Joined:
    Aug 27, 2012
    Posts:
    353
    Yes I had it enabled
     
  48. Meceka

    Meceka

    Joined:
    Dec 23, 2013
    Posts:
    423
    Hello, I have been using amplify motion and amplify occlusion for our project.
    I added post processing stack especially for the eye adaptation effect;

    I don't know if it's expected, but post processing stack doesn't work with either the amplify occlusion nor amplify motion.
    Even if all effects in the post processing profile are disabled, I get glicthy results game view switching between dark/light render.
    I tried moving each component up/down on inspector, tried enabling them one by one. I also tried disabling antialiasing. None of these worked.

    Are there some workarounds that I can try to make them work together?
     
    Orion_Reed likes this.
  49. Orion_Reed

    Orion_Reed

    Joined:
    Aug 14, 2012
    Posts:
    39
    To generalise your point a little, I think many of us would love to know more about integrating this post-processing stack with other effects, as ultimately that may be the key factor in how useful this stack can be, regardless of how good the actual effects are (and they are fantastic!)
     
  50. Invertex

    Invertex

    Joined:
    Nov 7, 2013
    Posts:
    1,539
    Should be simple as comparing the scripts of the effects that work and those that don't.