Camera overlays?


I’m not sure if there is something in Unity or on the assets store for this, but some games have had overlays often on cameras (Sometimes with blood when injured) and rain droplets on the screen (Although not particularly realistic in most cases) generally first person.

Does anyone have a solution for either putting an overlay on the camera, whether this be slightly broken glass or rain droplet effect. As I wanted to make it seem like my character will have a gas mask on similar to that of Metro2033.

Alpha texture on the camera or an image effect?

Metro 2033 Gas mask / Glass effect IMG

Another way to do is by using a separate camera with a higher Depth value than your main camera. Set the Clear Flags to “Don’t Clear”. The Culling Mask should be a separate layer used specifically for your overlay effects. Anything that this camera sees (that is is in the specific overlay layer) will been drawn over everything else.

There are a number of way of accomplishing an overlay. As a start, create an texture with transparency and use (C#):

void OnGUI() {
	GUI.DrawTexture(new Rect(0,0,Screen.width, Screen.height), tex);

Or Unity Script:

function OnGUI() {
	    GUI.DrawTexture(Rect(0,0,Screen.width, Screen.height), tex);