Color Shenanigans
This is a simple screen space shader that lets you change various color properties. Think of it like some sort of post processing effect for your avatar/world.
Installation
Simply drag the unity package into the file browser of your project.
The files will be added to: Assets/Kokos/Shaders/Color Shenanigans
Usage
This shader generates a "full screen quad" on the screen on which the effects are applied to. This quad will only be active when the domain is seen by the camera. Meaning, as long as an object (with this shader applied to it) is rendered (seen), the effects are active.
The package contains a prefab (Color Shenanigans Prefab) you can drag and drop into the hierarchy to test. It is a simple qube (2.5 x 2.5 x 2.5) with a material using the shader.
Each effect has a toggle to deactivate it. It is recommended to have everything you do not need turned off.
The toggles as well as every other parameter can be animated.
The effects are applied sequentially in the order in which they are listed in the UI.
Properties
| Property | Type | Description | Default |
|---|---|---|---|
| Global Intensity (_Intensity) | Range(0, 1) | Controls the intensity of all effects | 1.0 |
| WobbleIntensityX (_WobbleIntensityX) | Range(0, 0.1) | Horizontal effect strength | 0.01 |
| WobbleIntensityY (_WobbleIntensityY) | Range(0, 0.1) | Vertical effect strength | 0.01 |
| NoiseTex (_NoiseTex) | 2D | Texture used for distortion (Utilizes the red channel of given texture) | "white" |
| Panning (_NoiseTexSpeed) | Vector | Panning speed (X/Y) | (0.05, 0.05, 0, 0) |
| ChromaAmount (_ChromaAmount) | Range(0, 0.05) | Effect intensity | 0.02 |
| Blur (_Blur) | Range(0, 1) | Effect intensity | 0.1 |
| Steps (_Steps) | Float | Numer of posterization steps | 1 |
| Color (_Color) | Color | Overlay color | (1,1,1,1) |
| ColorIntensity (_ColorIntensity) | Range(0, 1) | Effect intensity | 0.5 |
| Hue (_Hue) | Range(0, 1) | Hue shift | 0.25 |
| Saturation (_Saturation) | Range(-1, 1) | Color caturation | 0.25 |
| Value (_Value) | Range(-1, 1) | Brightness | 0.25 |
| ReplacementSource (_ReplacementSource) | Range(0, 1) | Hue to be replaced | 0.5 |
| ReplacementTarget (_ReplacementTarget) | Range(0, 1) | Replacement Hue | 0.5 |
| ReplacementThreshold (_ReplacementThreshold) | Range(0, 1) | Determines how "aggresive" the effect is applied | 0.5 |
| DesaturationTarget (_DesaturationTarget) | Range(0, 1) | This hue will remain while everything else will be desaturated | 0.0 |
| DesaturationIntensity (_DesaturationIntensity) | Range(0, 1) | Effect intensity | 0.0 |
| InvertEnabled (_InvertEnabled) | Range(0, 1) | Invert colors | 0 |
| ScanlineIntensity (_ScanlineIntensity) | Range(0, 1) | Effect intensity | 0.5 |
| ScanlineSize (_ScanlineSize) | Float | Number of lines shown on screen | 200 |
| RenderQueueOffset (_Pender_QueueOffset) | Int | Offsets the render queue (+/-) | 0 |
Tipps
Sometimes you may encounter other emissive objects to appear extremely bright when certain effects are applied. In this case you need to change the render queue offset.
