Make shadows disappear

I have a GPS in my fps game that follows the player and help him to locate enemies faster and explore the enviroment. It’s a camera with lots of “customization”. I want to change the camera so it CANNOT SEE SHADOWS. Is there a way to do it? Tag something or change layers? Via script? I don’t have any idea.

There is a bit of a hackish solution, but it works (tested).

Attach a script called HideShadows.cs with this code to a camera:

using UnityEngine;

public class HideShadows: MonoBehaviour {

   float  storedShadowDistance;

    void OnPreRender() {
        storedShadowDistance = QualitySettings.shadowDistance;
        QualitySettings.shadowDistance = 0;

    void OnPostRender() {
        QualitySettings.shadowDistance = storedShadowDistance;


The functions OnPreRender() and OnPostRender() are called by Unity on all scripts attached to a GameObject with a Camera component before and after the camera renders it’s view to the screen.

In OnPrerender() this script sets the shadowdistance to 0 after storing the “real” shadow distance in a variable.
When the camera renders, it doesn’t render any shadows due to shadowdistance being 0.

In OnPostRender() the script restores the shadowdistance setting, making the other cameras render shadows as normal.