Cinematic Image Effects (Pre Release) package

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

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!

19 Likes

Awesome, looking forward to trying this out!

1 Like

Are you guys planning on adding velocity buffers to SMAA? In other words will this be the basis for Temporal AA?

4 Likes

Itā€™s on the roadmap. We are investigating it now.

3 Likes

looking forward to try the ssrr

1 Like

Great! Going to try it now! Thanks Unity!

1 Like

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.

1 Like

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.

1 Like

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 :slight_smile:

6 Likes

Does this work properly on mobile? or there will be mobile optimized version available in future?

1 Like

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 :confused:

  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.

3 Likes

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 :slight_smile:

1 Like

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.

1 Like

@theprotonfactor_1

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.

1 Like

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.

1 Like

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.

1 Like

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?

1 Like

Have plan to make this support for mobile platforms ?

1 Like

Really, you want to run SSR on mobileā€¦

1 Like

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ā€¦

1 Like