In order to use this effect, attach the "GlowOutline" script to the camera. Then you will have two tabs: one for changing how the glow looks and one for adding objects you would like to glow. You can either add objects you want to glow via the editor or with code.

 Here is the github for anyone who is interested: https://github.com/Bop32/GlowOutline

Keep in mind:
  • The effect will render no matter what (through walls and even when visible). As of now with the current API I attempted to make it work only in certain conditions but don't think it is possible.
  • Currently there is a problem with alpha which I cannot figure out so for now alpha will be forced to one. If you try to decrease the alpha in the color picker nothing will happen. It is intended.
  • The edges of objects might look bad because I don't think there is anti-alias? I don't think that is an issue I can solve.
I also added the ability to just access an instance of the class by typing (Only one is allowed to exist):

GlowOutline.Instance

Documentation: 
Add(GameObject item);
Allows the user to add a object they wish to glow via code (Color will be default color that is set in the editor).

Add(GameObject item, Color color);
 Allows the user to add a object they wish to glow with a specified color.

SetGlowColor(GameObject item, Color newColor);
Allows you to change color of glowing object.

GetGlowObject(GameObject item)

Get the GameObject that is glowing.

TryAdd( GameObject item, Color color )

Tries to add the GameObject to the glowing list with a specific color. Returns false if the GameObject already exists in the list.

TryAdd( GameObject item )

 Tries to add the GameObject to the glowing list with the default glow color. Returns false if the GameObject already exists in the list. 

Contains( GameObject item )

Is the GameObject glowing? Does it exist?

Remove(GameObject item);
Allows the user to remove an object they don't want to glow anymore.

RemoveAt(int index);
Allow the user to remove an object at a certain index

Clear();
Allows the user to remove all objects that are glowing

Examples (You don't need to use GlowOutline.Instance you can just make a field and get component):

GlowOutline.Instance.Add(buttonGameObject, Color.Cyan);
GlowOutline.Instance.Remove(deadPlayer);
GlowOutline.Instance.ChangeColor(buttonGameObject, Color.White);

    Feel free to modify the script in anyway shape or form. If you have improvements feel free to share it with me in Discord via the username `bop32` (or William in the S&Box discord) so I can publish it for everyone.