Пример #1
0
 public void Reset(float value, float duration, IInterpolationFunction interpolation = null, float offset = 0)
 {
     _value         = value;
     _duration      = duration;
     _time          = _offset;
     _lastValue     = 0;
     _interpolation = interpolation ?? LinearInterpolation.Instance;
 }
Пример #2
0
 public void Add(float value, float seconds = 0, IInterpolationFunction interpolation = null)
 {
     if (Mathf.Approximately(value, 0))
     {
         return;
     }
     if (Mathf.Approximately(seconds, 0) || seconds < 0)
     {
         _modifiedValue.Increment(value);
     }
     else
     {
         _overTimeModifiers.Add(ObjectPool <InterpolatedOverTimeModifier> .Request().Reseted(value, seconds, interpolation ?? _interpolation, _lastTime - Time.time));
     }
 }
    private void SetConfiguration()
    {
        switch (splitStrategie)
        {
        case SplitStrategy.TakeEverySecond:
            splitter = new TakeEverySecondDataSplitter();
            break;

        case SplitStrategy.TwoParts:
            splitter = new TwoPartsDataSplitter();
            break;

        case SplitStrategy.Interval:
            splitter = new IntervalDataSplitter();
            break;

        default:
            splitter = new TwoPartsDataSplitter();
            break;
        }

        switch (interpolationStrategy)
        {
        case InterpolationStrategy.Linear:
            interpolationFunction = new LinearInterpolationFunction();
            break;

        case InterpolationStrategy.Quadratic:
            interpolationFunction = new QuadraticInterpolationFunction();
            break;

        case InterpolationStrategy.Bezier:
            interpolationFunction = new BezierInterpolationFunction();
            break;

        default:
            interpolationFunction = null;
            break;
        }
    }
Пример #4
0
 public InterpolatedOverTimeModifier Reseted(float value, float duration, IInterpolationFunction interpolation = null, float offset = 0)
 {
     Reset(value, duration, interpolation, offset);
     return(this);
 }
Пример #5
0
 public PoliModifiedValue(INumericValueState <float> value, IInterpolationFunction interpolation = null)
 {
     _modifiedValue = value;
     _interpolation = interpolation ?? LinearInterpolation.Instance;
 }