Dim background effect in Unity's UGUI system

Job ID: 32731102

Budget: £20 – £250 GBP

I need code for a background dimming effect for UGUI items.

## Specs
- Specify which UI elements need to be excluded from being dimmed by the dark background
- Must work with all types of UI elements (buttons, panels, etc.)
- Must work for non-standard UI elements (e.g. circles, ovals, etc.)
- Work with dynamic UI elements (the ones that change size and position)
- Work with all Canvas modes (Overlay, Camera, World)
- Work with all Camera modes
- Lightweight and fast to render (no lag)
- Preferably easy to setup
- Be able to control the color and transparency of the dimmed background

I have attached a screenshot of the effect I am talking about.

## Requirements
- Must work with Unity 2019.4 and above
- Controllable via C# script
- Must not depend on third-party assets to work
- If your work needs to be dependent on an open-source framework, let me know
- Must work cross-platform
- Compatible with render pipelines. Can have three separate implementations to work for each solution if that’s the only way. Preferably must co-exist together in a single project
- Built-in render pipeline
- Universal render pipeline
- High Definition render pipeline

## Expected deliverable format
- A .unitypackage that contains all required code as well as an example scene
- Code (be it GLSL or C#) must be reasonably commented and method/variable names must be clear
Related categories: C# Programming Unity 3D Graphics Programming