Example #1
0
    private ShadowTransform[] BlendController(
        ShadowController controller,
        ShadowTransform[] input,
        Slider weight,
        FilterList <string> filter = null)
    {
        if (weight.IsMin == true)
        {
            return(input);
        }

        // Update the target controller from that blend
        if (filter == null)
        {
            controller.Decode(input);
        }
        else
        {
            controller.Decode(input, filter);
        }
        controller.ControlledUpdate();
        ShadowTransform[] result
            = controller.Encode(this.NewTransformArray());

        return(BlendSystem.Blend(
                   this.NewTransformArray(),
                   new BlendPair(input, weight.Inverse),
                   new BlendPair(result, weight.Value)));
    }
Example #2
0
    private ShadowTransform[] BlendController(
        ShadowController controller,
        ShadowTransform[] input,
        Slider weight,
        FilterList<string> filter = null)
    {
        if (weight.IsMin == true)
            return input;

        // Update the target controller from that blend
        if (filter == null)
            controller.Decode(input);
        else
            controller.Decode(input, filter);
        controller.ControlledUpdate();
        ShadowTransform[] result
            = controller.Encode(this.NewTransformArray());

        return BlendSystem.Blend(
            this.NewTransformArray(),
            new BlendPair(input, weight.Inverse),
            new BlendPair(result, weight.Value));
    }