public override UIAnimation_Base GetNewAnimation()
        {
            NewValues newValues = GetNewValues();
            MaterialAnimation_Color newAnimation = new MaterialAnimation_Color(materialAnimator, onCompleteAction, tweenType, this.propertyID, newValues.newStartValue, newValues.newEndValue, newValues.newDeltaValue, newValues.newDuration, easeCurve, loopType, loopCount);

            return(newAnimation);
        }
        ////////////////////////////////////////
        //
        // StartColor Functions

        protected void AddColorAnimation(UIAnimation_Base.TweenType tweenType, Action onCompleteAction, MaterialAnimation.ColorData colorData, float duration, AnimationCurve easeCurve, UIAnimation_Base.LoopType loopType, int loopCount)
        {
            MaterialAnimation_Color newMaterialAnimationColor = new MaterialAnimation_Color(this, onCompleteAction, tweenType, Shader.PropertyToID(colorData.propertyName), colorData.startColor, colorData.endColor, colorData.deltaColor, duration, easeCurve, loopType, loopCount);

            myMaterialAnimationsColor.Enqueue(newMaterialAnimationColor);
        }