Auto Exposure

Universal Render Pipeline

auto exposure in mountainous field, daytime
auto exposure overlooking a lake
auto exposure used in grass view
No items found.

Summary

Improve your project with this automatic exposure system. Your cameras can now automatically brighten or darken your shots in order to simulate realistic eye adaptation.

Purchase

License this Asset
Coming soon

About

About

Auto Exposure is the perfect solution for Unity URP users looking for an easy way to add eye adaptation to their scenes. This powerful asset automatically brightens or darkens your scene view to recreate the function of eye adaptation, which adjusts to both very dark and very bright areas. Fully integrated with the Volume Component System, Auto Exposure is easy to use and customize, with full source code access included. With support for procedural radial masks and input textures, this asset is perfect for creating realistic and immersive experiences. Plus, with our commitment to customer satisfaction, you can trust that we'll be there to support you every step of the way. Try Auto Exposure today and see the difference it can make in your Unity URP projects!

Usage Instructions

  1. Add the Auto Exposure Render Feature to your Universal Renderer Data asset.
  2. Click on your Camera, ensure the Post Processing checkbox is toggled on.
  3. In the Scene or Hierarchy view, select a Game Object that contains a volume component to view it in the Inspector.
  4. Click 'Add Override'
  5. Select Post-processing / AutoExposure
  6. Configure the Auto Exposure effect from the Volume Profile.

You can also assign the Auto Exposure effect to Local Box and Sphere Volumes in the same way you would with any other built-in URP post-processing effect.

Notes

  • Your camera will always use the Instant adaptation mode in Scene View and in Game View (when not in Play mode).
  • You can customize how the camera weights luminance values using procedural radial masks or using your own input textures.

Troubleshooting

  • Ensure that you have added the Auto Exposure Render Pass to your Universal Renderer Data.
  • Ensure that your camera has Post Processing enabled.
  • Ensure that your Volume Profile has the Auto Exposure override added, and that the override's Mode is set to On.

Demo

FAQs

Does Auto Exposure work on WebGL?

  • Yes. Auto Exposure offers a Fragment Shader option to ensure compatibility with WebGL and other platforms that do not support the default Compute Shader method for Auto Exposure.

Is Auto Exposure integrated into the Volume Component System?

  • Yes. Auto Exposure is fully integrated with Unity URP's Volume Component System. It's great. It looks and feels like it's one of Unity's built-in volume overrides.

Is Auto Exposure compatible with Forward and Deferred Render Paths?

  • Yes. This asset is compatible with both Forward & Deferred Render Paths.

What is an Exposure Curve?

  • Exposure curves let you set an additional exposure compensation value based on the scene's exposure. This enables you to conditionally over- or under-expose your scene based on your scene's brightness.
  • You can set the Exposure Curve from the Auto Exposure settings within your Volume.
  • The Exposure Curve is clamped to a range of [-3, +3] EVs. This equates to a limitation of 8x darker or 8x brighter. Note that you can also use the separate exposure compensation to exceed these limitations.

How does Auto Exposure work?

  • We use a Compute Shader to sample each pixel on screen and then evaluate the luminance of the pixel,
  • We then use these results to estimate the total screen luminance accounting for your metering mask (which lets you input a texture or radial falloff mask to control the weighting of the samples).
  • Then, we convert the total average luminance to EV units.
  • We use these EV units to determine the target EV for this frame based on your configuration.
  • Then, we return back an Exposure value. We use a single exposure value across the entire screen to adjust the screen pixel brightness to give a result consistent with your target EV.

Sounds complicated! Is Auto Exposure performance-intensive?

  • No. The compute shader approach allows us to execute the bulk of this process in parallel so that the resulting performance hit is minor.

What options can I control?

  • We've exposed the following properties. All of these properties can be changed during runtime via the Volume Component System API.
  • Mode (Enabled / Disabled)
  • Lower Bound
  • Upper Bound
  • Fixed Compensation
  • Compensation Curve (x: [Lower Bound, Upper Bound], y: [-3, +3])
  • Adaptation Mode (Progressive, Instant)
  • Dark to Light Speed
  • Light to Dark Speed
  • Metering Mask Mode (Textural, Procedural)
  • Metering Mask Texture
  • Metering Procedural Falloff

Changelog

1.4.0

January 23, 2023

  • Auto Exposure now supports a Fragment Shader rendering mode. This rendering mode makes the asset compatible with platforms that do not support Compute Shaders.

1.3.0

August 8, 2022

  • Added the option to use an Exposure Compensation Curve.
  • The curve is combined additively with the fixed exposure compensation.
  • The curve is limited to a range of 0 -> 1 on the x-axis. This range is then remapped to the Lower Bound and Upper Bound exposure ranges.
  • The curve is limited to a range of -3 -> +3 on the y-axis, representing a total exposure variance range of -0.125x -> 8x brightness. Use the fixed compensation or the Volume system for a larger dynamic range within a single Volume.
  • Updated some tooltips and labels to improve clarity.
  • Fixed a bug causing the scene luminance to be miscalculated when using Dynamic Render Scaling.

1.2.0

June 17, 2022

  • Users can now select between procedural and textural metering mask modes.
  • For the procedural metering mask mode, users can now customize the falloff rate.
  • For the textural metering mask mode, users can point to a custom falloff texture.
  • Slightly updated the included demo scene.

1.1.0

June 11, 2022

  • Improved performance
  • Exposure adjustment calculations now take place entirely in EV units, resulting in more responsive and consistent exposure adjustments regardless of the baseline EV of your scene.
  • Converted Dark to Light and Light to Dark Time parameters to Speed parameters that reflect the speed (in F-Stops) at which the Auto Exposure can adjust. A higher value means that the effect can adjust more quickly.

1.0.0

First release

More Assets

https://uploads-ssl.webflow.com/6363e3d1d6ba105709c9042f/636a7136e25120c566d9165f_20221017-013.jpg
https://uploads-ssl.webflow.com/6363e3d1d6ba105709c9042f/636a713766ad3172536098ce_20221017-014.jpg
https://uploads-ssl.webflow.com/6363e3d1d6ba105709c9042f/636a713761e0e4513df78e6a_20221017-017.jpg
No items found.