public static void TransitionVignette(Color newColour, float transitionTime, int orderInLayer = -1, OnTransitionCompleteCallback callback = null)
    {
        if (Vignette != null)
        {
            sm_OnCompleteCallback = callback;

            sm_cPreviousColour      = CurrentColour;
            sm_cTransitioningColour = newColour;

            if (orderInLayer > -1)
            {
                Vignette.sortingOrder = orderInLayer;
            }

            sm_ttVignetteFadeTimer.FinishTime = transitionTime;
            sm_ttVignetteFadeTimer.Reset();
            IsTransitioning = true;
        }
    }
    public static void TransitionVignette(float newAlphaColour, float transitionTime, int orderInLayer = -1, OnTransitionCompleteCallback callback = null)
    {
        Color newColour = CurrentColour;

        newColour.a = newAlphaColour;
        TransitionVignette(newColour, transitionTime, orderInLayer, callback);
    }