Search Unity

Cinematic Image Effects (Pre Release) package

Discussion in 'Image Effects' started by willgoldstone, Dec 8, 2015.

  1. willgoldstone

    willgoldstone

    Unity Technologies

    Joined:
    Oct 2, 2006
    Posts:
    794
    Hi! At Unity we are currently developing a number of new Image Effects. The idea behind these effects is that they should look amazing and scale to different hardware levels (where possible).

    The effects currently in development are:
    • Screen Space Reflections
    • Tonemapping & Color Grading
    • New Antialiasing (SMAA)
    • Depth of Field
    We will be adding more as we start to finish these current effects up.

    Open Source development

    Each of the listed effects are at a different phase of development, but we don't feel that this should stop you from getting your hands on them now. For these new image effects we will be developing them, and shipping them, on a public bitbucket account, as well as periodically on the asset store. This means that the unity developers that modify these effects, as well as you (?) will be developing in the public space. We will be actively taking pull requests and engaging in discussion about issues and fixes. We would love to hear your feedback and see some pull requests from you.

    Where to Download

    You will be able to get the project either from BitBucket or the Asset Store. The version on the Asset Store will be periodically updated, and that version tagged in the main Effect repository.

    Asset Store
    http://u3d.as/mHd

    Open Source
    https://bitbucket.org/Unity-Technologies/cinematic-image-effects

    Current Status

    Screen Space Reflections - We just missed the cutoff for 5.3 due to one or two outstanding issues. These have since been fixed. You should be able to use this effect now in your project and achieve desirable results. Note: This effect requires Deferred Rendering. Not designed for or tested on mobile.

    • Tonemapping & Colour Grading - Still in development, but in a decent beta state. Supports texture LUT and other custom grading settings.
    • Depth of Field - Still in development, but in a decent beta state.
    • SMAA - Still in development and buggy. We have had success in some scenes, but not in others. It might work well for your project but we are actively working on improving it.

    We’re looking forward to hearing your feedback on these effects, so get to it!
     
    Talhayousuf, Novack, John3D and 16 others like this.
  2. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,792
    Awesome, looking forward to trying this out!
     
    Talhayousuf likes this.
  3. theprotonfactor

    theprotonfactor

    Joined:
    Oct 10, 2014
    Posts:
    140
    Are you guys planning on adding velocity buffers to SMAA? In other words will this be the basis for Temporal AA?
     
  4. Tim-C

    Tim-C

    Unity Technologies

    Joined:
    Feb 6, 2010
    Posts:
    2,225
    It's on the roadmap. We are investigating it now.
     
    Talhayousuf, John3D and hopeful like this.
  5. waseem2bata

    waseem2bata

    Joined:
    Apr 17, 2014
    Posts:
    10
    looking forward to try the ssrr
     
    Talhayousuf likes this.
  6. ArchVizPRO

    ArchVizPRO

    Joined:
    Apr 27, 2014
    Posts:
    457
    Great! Going to try it now! Thanks Unity!
     
    Talhayousuf likes this.
  7. Dhialub

    Dhialub

    Joined:
    Nov 11, 2013
    Posts:
    41
    I've downloaded it, and screen space reflections are not working. It says it's not supported on this platform (DX11), and the SSR shader is missing. After a little investigation, I've found out that the ScreenSpaceRaytrace.cginc is completely missing from the package.
     
    Talhayousuf likes this.
  8. antoine_pultier

    antoine_pultier

    Joined:
    Feb 4, 2014
    Posts:
    1
    Yes, the asset store package didn't work too, but the opensource repository has a working version. It looks great, and thank you for making it opensource.
     
    Talhayousuf likes this.
  9. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Regarding post FX, I suggest that for PSVR, Rift and Vive, Unity implement a close-fit mesh around the eye parts so that post costs considerably less in VR mode. This is best implemented on Unity's side and should see a significant gain especially on PS4. Please consider these optimisations as most users will be unaware of them, and the shapes are different per VR device.

    Other than this I'm super pleased with how things are going! Please keep it up :)
     
  10. idurvesh

    idurvesh

    Joined:
    Jun 9, 2014
    Posts:
    495
    Does this work properly on mobile? or there will be mobile optimized version available in future?
     
    Talhayousuf likes this.
  11. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,792
    The new effects are great. Was pleasantly surprised by the tonemapping stuff. A couple of questions/feedback though.

    1) White Balance is a bit .... weird. I think it should be renamed to something like "Tint". I was expecting it needed a color to act as a white point, but it just seems it just tints the scene instead. It should either be renamed or maybe the functionality changed.

    2) F-Stop works as it should, meaning lower values means more blur, yay!

    3) The historigram in the tonemapper is so cool! Awesome! The only thing that hinders it, is the general slowness of the Unity GUI :/

    4) Is there any work being done so that the filters can share resources? I was sort of expecting the "cinematic" effects to be one big filter, with mutlicompile defines to turn effects on off, so the can share resources.

    5) Are you going to implement some sort of Motion Vector buffer? Please do. It seems every filter (Unity authored, or otherwise) has some sort of temporal filtering and each one creates its own buffer. Soon if you want to use multiple effects, you will also be generating multiple motion vectors. And everyone's games will be going slowly because the engine will spend 50% of the time generating motion vectors (I'm exaggerating a bit...). You can spare us all from such a fate by implementing a motion vector buffer in Unity. Please. Think of all those poor CPU and GPU cycles you'll be saving.
     
    Talhayousuf, elias_t and hippocoder like this.
  12. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Point 5 is the important part, it should probably be a quality setting define as it kind of needs to run when vertex shaders run if I'm not mistaken or in deferred part of MRT, I don't know what method Unity is deciding on, but yes it's one of those things lots of things use including motion blur :)
     
    Talhayousuf likes this.
  13. theprotonfactor

    theprotonfactor

    Joined:
    Oct 10, 2014
    Posts:
    140
    With Temporal AA on the roadmap they'll probably have to make one. Certainly with Temporal SMAA you need to construct such a buffer in the vertex shader phase of rendering.
     
    Talhayousuf likes this.
  14. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,792
    @theprotonfactor

    The SMAA and their DOF that is in this package, already do temporal stuff.

    I'm guessing they each generate their own buffer, even if you use them together. <- It's already happening.
     
    Talhayousuf likes this.
  15. theprotonfactor

    theprotonfactor

    Joined:
    Oct 10, 2014
    Posts:
    140
    Ah, I see. I thought it was SMAA without temporal filtering. I was looking into making my own temporal based AA but I decided against it for the reason of multiple buffers. I was hoping Unity's implementation wouldn't have this limitation.
     
    Talhayousuf likes this.
  16. maruska

    maruska

    Joined:
    Jun 1, 2013
    Posts:
    9
    I agree, the white balance is a tinting tool. To get white balance from it, you have to sample your "white" add 180-degrees to the hue value (or subtract) and then drop the saturation by about 50%. A bit of a hack, but it makes it work more like a WB control than a tint function. I'd like to have both. Tint and WB.
     
    Talhayousuf likes this.
  17. petey

    petey

    Joined:
    May 20, 2009
    Posts:
    1,824
    Hey any clues on how to get the screen space refections working? I've created a test project but I cant seem to get it working. Do you have to have a specific material on objects or something?
     
    Talhayousuf likes this.
  18. CoderPro

    CoderPro

    Joined:
    Feb 21, 2014
    Posts:
    327
    Have plan to make this support for mobile platforms ?
     
    Talhayousuf likes this.
  19. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,792
    Really, you want to run SSR on mobile...
     
    QuantumTheory likes this.
  20. Lex4art

    Lex4art

    Joined:
    Nov 17, 2012
    Posts:
    445
    SSR does not want to work, got this warnings in console after adding SSR to camera:
    Win 8.1 x64, Unity 5.3.0f4, DX11, deferred/linear render...
     
    Talhayousuf likes this.
  21. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,792
    What platform is the project type/platform?

    " has been disabled as it's not supported on the current platform."
     
    Talhayousuf likes this.
  22. Lex4art

    Lex4art

    Joined:
    Nov 17, 2012
    Posts:
    445
    Was on "Web player" (forgot about this, thanks!) but switching back to "PC, Mac & Linux standalone" & restart also did not help, same warning appears in console...
     
    Talhayousuf likes this.
  23. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    I get a warning SSR is unsupported on my 460 card (dx11 / win 10 / 64 bit) which seems unusual.
     
    Talhayousuf likes this.
  24. Lex4art

    Lex4art

    Joined:
    Nov 17, 2012
    Posts:
    445
    Last edited: Dec 10, 2015
  25. petey

    petey

    Joined:
    May 20, 2009
    Posts:
    1,824
    Talhayousuf and Lex4art like this.
  26. MartijnDekker

    MartijnDekker

    Joined:
    Feb 13, 2015
    Posts:
    8
    Has some1 tried the SSR on WebGL ?
     
    Talhayousuf likes this.
  27. Tim-C

    Tim-C

    Unity Technologies

    Joined:
    Feb 6, 2010
    Posts:
    2,225
    I just tried this (by getting the asset store package). It works for me and the shader is present. Are you in deferred mode? that is a requirement.
     
    Talhayousuf likes this.
  28. Tim-C

    Tim-C

    Unity Technologies

    Joined:
    Feb 6, 2010
    Posts:
    2,225
    noted

    On DX11 we do this on a compute shader and it's very fast. The slowness otherwise is manually calculating the histogram on CPU... so slow!

    We haven't forgot about this and will be moving towards combining things where they make sense. We have started this with the tonemapping, colorgrading, and LUT and will continue to do it as we move on. One thing to remember is that while some buffers can be nicely used between passes (downsized depth buffers / motion vectors are a great example), other things can not, an example is you NEED to have SSR calculated before you calculate bloom, reusing a downsized input buffer from ssr in the bloom pass makes no sense if the ssr does not exist in it! That being said there ARE smarter things, tonemapping etc, is one pass... this could probably be patched into the end of the pass before it.

    It's on our roadmap. Trust me, we all really want this! Currently our accumulation is not motion based and that makes it kind of suck. When we get there our effects should improve dramatically.
     
    Talhayousuf, Sir-Spunky and AcidArrow like this.
  29. Tim-C

    Tim-C

    Unity Technologies

    Joined:
    Feb 6, 2010
    Posts:
    2,225
    SSR needs deferred + support from image effects. I haven't specifically tested but I believe it should in theory.
     
    Talhayousuf likes this.
  30. nbac

    nbac

    Joined:
    Jul 7, 2015
    Posts:
    267
    nice! what kind of grass are you using!? shader based!?
     
    Talhayousuf likes this.
  31. pantomas

    pantomas

    Joined:
    May 5, 2014
    Posts:
    1
    I've just built a webGL build with SSRR effect, but it's not working (tested in Safari, Chrome and Mozilla). All reflections are gone :( my rendering path is setup on Deferred. What do you mean by "support from image effects"?
     
    Talhayousuf likes this.
  32. Deleted User

    Deleted User

    Guest

    Just wrap the line with #if UNITY_EDITOR to fix.
     
    Talhayousuf likes this.
  33. Tim-C

    Tim-C

    Unity Technologies

    Joined:
    Feb 6, 2010
    Posts:
    2,225
    ah, i'll patch this tonight into the repository.
     
  34. chingwa

    chingwa

    Joined:
    Dec 4, 2009
    Posts:
    3,790
    SSR Seems to work pretty nice, it has a tendency to spin up my computer fans quite noticeably but it doesn't seem to affect the overall fps much (compared to some other SSR solutions I've tried).
     
    Talhayousuf and hippocoder like this.
  35. DigitalAdam

    DigitalAdam

    Joined:
    Jul 18, 2007
    Posts:
    1,209
    After I created a new project and imported both the standard image effects as well as the cinematic, I get an error:
    "The image effect Main Camera has been disabled and it's not supported on the current platform." My build setting is PC with deferred. Is it Pro only?
     
    Talhayousuf likes this.
  36. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    There is no pro only effect, only services.
     
    Talhayousuf likes this.
  37. DigitalAdam

    DigitalAdam

    Joined:
    Jul 18, 2007
    Posts:
    1,209
    Thoughts on what I'm missing then?
     
    Talhayousuf likes this.
  38. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    No idea, I'm busy at work but I get the same thing. Try it on a new project on the off chance that Unity's postfx helper is wrongly reporting (it's a bug but don't have time atm to file it)
     
    Talhayousuf likes this.
  39. DigitalAdam

    DigitalAdam

    Joined:
    Jul 18, 2007
    Posts:
    1,209
    Still no luck. Oh well...
     
    Talhayousuf likes this.
  40. Bdelcast

    Bdelcast

    Joined:
    Jul 11, 2014
    Posts:
    25
    Excellent!
    I was very much looking forward to this, and most of it actually seems to be pretty solid.

    A few observations that I'm experiencing in my machine:
    the Temporal antialiasing on SMAA x2 is very jittery, might be fixed with the mentioned vector data.
    When set to Standard x2 - x16 in my machine, it all goes black, however if I disable and enable the component in runtime, it works (and it looks really nice).

    As far as SSRR goes, nice going! some shadows are slightly artifacted, but it appears to work very well with less impact on performance than our own implementation and Candela's solution.
    One thing though, I couldn't manage to get it enabled in most of my projects, made sure the build target was PC, and that DX11 - deferred was turned on. I cleaned all the effects and re imported with no success.

    Win 10, DX11, Nvidia 680M x 2 (SLI, but non SLI had the same issue).

    Anyhow, hope that's helpful. You guys are doing a great job.
     
    Last edited: Dec 9, 2015
    Talhayousuf likes this.
  41. uinsuton

    uinsuton

    Joined:
    Oct 27, 2014
    Posts:
    2
    There appears to be an issue with enabling HDR on a camera and using the new AA script. The runtime (play-mode or standalone exe {Win 32/64}) will simply display black. If in play mode, toggling either HDR or the AA script on/off will correct the issue, but doing this in a standalone would not be ideal. Is this a known or issue or a limitation of deferred rendering that I am unaware of?
     
    Talhayousuf likes this.
  42. AcidArrow

    AcidArrow

    Joined:
    May 20, 2010
    Posts:
    11,792
    That happens for me too.

    They do say that SMAA is in development and buggy atm though, so I don't know why you would use it on a standalone build right now.
     
    Talhayousuf likes this.
  43. uinsuton

    uinsuton

    Joined:
    Oct 27, 2014
    Posts:
    2

    Surely not, but certainly worth bringing up in the event they did not know of this limitation going forward.
     
    Talhayousuf likes this.
  44. DxStd_IgnatPribylov

    DxStd_IgnatPribylov

    Joined:
    Sep 24, 2015
    Posts:
    30
    It is AWESOME!
    Only new / kiro (jp - for indi)

    It worked on my notebook - Intel Core I3 4000M + Nvidia 840M.
     

    Attached Files:

    Talhayousuf likes this.
  45. CavemanGames

    CavemanGames

    Joined:
    Aug 25, 2013
    Posts:
    4
    Got it all installed and working. Looking for things to put it on. Thanks much.
     
    Talhayousuf likes this.
  46. Sir-Spunky

    Sir-Spunky

    Joined:
    Apr 7, 2013
    Posts:
    132
    Amazing work!!! The Screen Space Reflections looks and performs great. This was my most anticipated feature in 5.3, as it really improves realism in indoor scenes.

    However, I also encountered the "not supported on the current platform" error. For me, it initially worked when adding it to a project I just upgraded to 5.3. However, after re-importing the default Unity "Effects" package (in case it had also recieved some updates in 5.3), Unity disabled the SSRR-effect with the above error message. So I imported the Cinematic Image Effects asset again, and now it works.
     
    Talhayousuf and Lex4art like this.
  47. notion

    notion

    Joined:
    Sep 15, 2012
    Posts:
    2
    Great addition to our collection of effects!
    The SSRR adds an extra spark to the realism in our scenes. We just finished our first project using SSRR and the results were very satisfying. Nice soft reflections bring the scenes to life.

    Here is the final test presentation using SSAA. It's in the test phase so there may be some bugs to iron out.
    http://http://www.notiondynamics.com/notionscape2/

    Douglas Tocco - Notion Dynamics
    www.notiondynamics.com
     

    Attached Files:

    Last edited: Dec 12, 2015
    Talhayousuf and Lex4art like this.
  48. NorthernVisionStudio

    NorthernVisionStudio

    Joined:
    Oct 18, 2013
    Posts:
    60
    @willgoldstone Thanks to you and the Unity team. I appreciate the open-source strategy and the new effects. Looking forward to testing them. Rock on.
     
    Talhayousuf likes this.
  49. bob54978

    bob54978

    Joined:
    Nov 17, 2015
    Posts:
    2
    these are looking good so far.

     
  50. Tim-C

    Tim-C

    Unity Technologies

    Joined:
    Feb 6, 2010
    Posts:
    2,225
    Hi. I'm doing some fixes today to the package. It looks like there are some issues if you combine normal standard assets with the cinematic effects. I'll post here when I've pushed the new changes.

    Remember: We are taking pull requests, so if you make fixes / improvements we WILL take them direct into bitbucket
     
    Last edited: Dec 10, 2015
    the_motionblur and Lex4art like this.