Page 1 of 1

Animated BSpline spline outline won't update

PostPosted: Sat Jun 04, 2022 8:20 am
by Tim Harris
If the "Center" for a Bspline is driven by expressions linked to a tracker the spline being drawn won't update its animation once the timeline caches. If you purge the cache it will display again moving while caching, then wont move again. However, the mask pixels will continue to be displayed correctly. For the purposes of tracker assisted roto (amongst other things) this need to be fixed PLEASE, Thank you.

Code: Select all
{
   Tools = ordered() {
      Tracker1 = Tracker {
         Trackers = {
            {
               PatternTime = 0,
               PatternX = 0.460185190513458,
               PatternY = 0.637152967206159
            }
         },
         Inputs = {
            Input = Input {
               SourceOp = "PipeRouter1",
               Source = "Output",
            },
            Name1 = Input { Value = "Tracker 1", },
            PatternCenter1 = Input { Value = { 0.43269292163325, 0.587926983409862 }, },
            PatternWidth1 = Input { Value = 0.00995697526317407, },
            PatternHeight1 = Input { Value = 0.0132554403831, },
            SearchWidth1 = Input { Value = 0.0165861990915508, },
            SearchHeight1 = Input { Value = 0.0260213978299084, },
            TrackedCenter1 = Input {
               SourceOp = "Tracker1Tracker1XYPath",
               Source = "Value",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 1046, 167.969 } },
      },
      Tracker1Tracker1XYPath = XYPath {
         ShowKeyPoints = false,
         DrawMode = "ModifyOnly",
         CtrlWZoom = false,
         NameSet = true,
         Inputs = {
            X = Input {
               SourceOp = "Tracker1Tracker1XYPathX",
               Source = "Value",
            },
            Y = Input {
               SourceOp = "Tracker1Tracker1XYPathY",
               Source = "Value",
            },
         },
      },
      Tracker1Tracker1XYPathX = BezierSpline {
         SplineColor = { Red = 255, Green = 0, Blue = 0 },
         NameSet = true,
         KeyFrames = {
            [0] = { 0.460185190513458, RH = { 0.333333333333333, 0.460099063126305 }, Flags = { Linear = true } },
            [1] = { 0.459926808352, LH = { 0.666666666666667, 0.460012935739153 }, RH = { 1.33333333333333, 0.459826439428389 }, Flags = { Linear = true } },
            [2] = { 0.459625701581166, LH = { 1.66666666666667, 0.459726070504777 }, RH = { 2.33333333333333, 0.459539574194013 }, Flags = { Linear = true } },
            [3] = { 0.459367319419708, LH = { 2.66666666666667, 0.459453446806861 }, RH = { 3.33333333333333, 0.459279157527347 }, Flags = { Linear = true } },
            [4] = { 0.459102833742625, LH = { 3.66666666666667, 0.459190995634986 }, RH = { 4.33333333333333, 0.459038407744361 }, Flags = { Linear = true } },
            [5] = { 0.458909555747833, LH = { 4.66666666666667, 0.458973981746097 }, RH = { 5.33333333333333, 0.458807830487416 }, Flags = { Linear = true } },
            [6] = { 0.458604379966583, LH = { 5.66666666666667, 0.458706105227 }, RH = { 6.33333333333333, 0.458514861737416 }, Flags = { Linear = true } },
            [7] = { 0.458335825279083, LH = { 6.66666666666667, 0.45842534350825 }, RH = { 7.33333333333333, 0.458251732397139 }, Flags = { Linear = true } },
            [8] = { 0.45808354663325, LH = { 7.66666666666667, 0.458167639515194 }, RH = { 8.33333333333333, 0.4579980974145 }, Flags = { Linear = true } },
            [9] = { 0.457827198977, LH = { 8.66666666666667, 0.45791264819575 }, RH = { 9.33333333333333, 0.457732933569014 }, Flags = { Linear = true } },
            [10] = { 0.457544402753041, LH = { 9.66666666666667, 0.457638668161027 }, RH = { 10.3333333333333, 0.457436573976999 }, Flags = { Linear = true } },
            [11] = { 0.457220916424916, LH = { 10.6666666666667, 0.457328745200958 }, RH = { 11.3333333333333, 0.457151743247833 }, Flags = { Linear = true } },
            [12] = { 0.457013396893666, LH = { 11.6666666666667, 0.457082570070749 }, RH = { 12.3333333333333, 0.45691913148568 }, Flags = { Linear = true } },
            [13] = { 0.456730600669708, LH = { 12.6666666666667, 0.456824866077694 }, RH = { 13.3333333333333, 0.456637691598527 }, Flags = { Linear = true } },
            [14] = { 0.456451873456166, LH = { 13.6666666666667, 0.456544782527347 }, RH = { 14.3333333333333, 0.456356929879777 }, Flags = { Linear = true } },
            [15] = { 0.456167042727, LH = { 14.6666666666667, 0.456261986303389 }, RH = { 15.3333333333333, 0.456082949845055 }, Flags = { Linear = true } },
            [16] = { 0.455914764081166, LH = { 15.6666666666667, 0.455998856963111 }, RH = { 16.3333333333333, 0.455830671199222 }, Flags = { Linear = true } },
            [17] = { 0.455662485435333, LH = { 16.6666666666667, 0.455746578317277 }, RH = { 17.3333333333333, 0.455562116511722 }, Flags = { Linear = true } },
            [18] = { 0.4553613786645, LH = { 17.6666666666667, 0.455461747588111 }, RH = { 18.3333333333333, 0.455256262562069 }, Flags = { Linear = true } },
            [19] = { 0.455046030357208, LH = { 18.6666666666667, 0.455151146459639 }, RH = { 19.3333333333333, 0.454963971980472 }, Flags = { Linear = true } },
            [20] = { 0.454799855227, LH = { 19.6666666666667, 0.454881913603736 }, RH = { 20.3333333333333, 0.454721187692278 }, Flags = { Linear = true } },
            [21] = { 0.454563852622833, LH = { 20.6666666666667, 0.454642520157555 }, RH = { 21.3333333333333, 0.454467552709639 }, Flags = { Linear = true } },
            [22] = { 0.45427495288325, LH = { 21.6666666666667, 0.454371252796444 }, RH = { 22.3333333333333, 0.454204423369361 }, Flags = { Linear = true } },
            [23] = { 0.454063364341583, LH = { 22.6666666666667, 0.454133893855472 }, RH = { 23.3333333333333, 0.453962317249569 }, Flags = { Linear = true } },
            [24] = { 0.453760223065541, LH = { 23.6666666666667, 0.453861270157555 }, RH = { 24.3333333333333, 0.453684946372833 }, Flags = { Linear = true } },
            [25] = { 0.453534392987416, LH = { 24.6666666666667, 0.453609669680124 }, RH = { 25.3333333333333, 0.453434702232208 }, Flags = { Linear = true } },
            [26] = { 0.453235320721791, LH = { 25.6666666666667, 0.453335011476999 }, Flags = { Linear = true } }
         }
      },
      Tracker1Tracker1XYPathY = BezierSpline {
         SplineColor = { Red = 0, Green = 255, Blue = 0 },
         NameSet = true,
         KeyFrames = {
            [0] = { 0.637152967206159, RH = { 0.333333333333333, 0.636976944829616 }, Flags = { Linear = true } },
            [1] = { 0.636624900076529, LH = { 0.666666666666667, 0.636800922453072 }, RH = { 1.33333333333333, 0.636504336804924 }, Flags = { Linear = true } },
            [2] = { 0.636263210261714, LH = { 1.66666666666667, 0.636383773533319 }, RH = { 2.33333333333333, 0.636077542823442 }, Flags = { Linear = true } },
            [3] = { 0.635706207946899, LH = { 2.66666666666667, 0.635891875385171 }, RH = { 3.33333333333333, 0.635583233409862 }, Flags = { Linear = true } },
            [4] = { 0.635337284335788, LH = { 3.66666666666667, 0.635460258872825 }, RH = { 4.33333333333333, 0.635202253471591 }, Flags = { Linear = true } },
            [5] = { 0.634932191743196, LH = { 4.66666666666667, 0.635067222607393 }, RH = { 5.33333333333333, 0.634773048224677 }, Flags = { Linear = true } },
            [6] = { 0.63445476118764, LH = { 5.66666666666667, 0.634613904706159 }, RH = { 6.33333333333333, 0.634325758487023 }, Flags = { Linear = true } },
            [7] = { 0.634067753085788, LH = { 6.66666666666667, 0.634196755786405 }, RH = { 7.33333333333333, 0.633942367283319 }, Flags = { Linear = true } },
            [8] = { 0.633691595678381, LH = { 7.66666666666667, 0.63381698148085 }, RH = { 8.33333333333333, 0.633544508487023 }, Flags = { Linear = true } },
            [9] = { 0.633250334104307, LH = { 8.66666666666667, 0.633397421295665 }, RH = { 9.33333333333333, 0.633120125770974 }, Flags = { Linear = true } },
            [10] = { 0.632859709104307, LH = { 9.66666666666667, 0.63298991743764 }, RH = { 10.3333333333333, 0.632711416280233 }, Flags = { Linear = true } },
            [11] = { 0.632414830632085, LH = { 10.6666666666667, 0.632563123456159 }, RH = { 11.3333333333333, 0.632227957561097 }, Flags = { Linear = true } },
            [12] = { 0.631854211419122, LH = { 11.6666666666667, 0.63204108449011 }, RH = { 12.3333333333333, 0.6317023016969 }, Flags = { Linear = true } },
            [13] = { 0.631398482252455, LH = { 12.6666666666667, 0.631550391974677 }, RH = { 13.3333333333333, 0.631264657020973 }, Flags = { Linear = true } },
            [14] = { 0.63099700655801, LH = { 13.6666666666667, 0.631130831789492 }, RH = { 14.3333333333333, 0.630806516588874 }, Flags = { Linear = true } },
            [15] = { 0.630425536650603, LH = { 14.6666666666667, 0.630616026619739 }, RH = { 15.3333333333333, 0.630273626928381 }, Flags = { Linear = true } },
            [16] = { 0.629969807483936, LH = { 15.6666666666667, 0.630121717206158 }, RH = { 16.3333333333333, 0.629764849922208 }, Flags = { Linear = true } },
            [17] = { 0.629354934798751, LH = { 16.6666666666667, 0.629559892360479 }, RH = { 17.3333333333333, 0.629189763116652 }, Flags = { Linear = true } },
            [18] = { 0.628859419752455, LH = { 17.6666666666667, 0.629024591434554 }, RH = { 18.3333333333333, 0.628679780477764 }, Flags = { Linear = true } },
            [19] = { 0.628320501928381, LH = { 18.6666666666667, 0.628500141203072 }, RH = { 19.3333333333333, 0.628138451388258 }, Flags = { Linear = true } },
            [20] = { 0.627774350308011, LH = { 19.6666666666667, 0.627956400848134 }, RH = { 20.3333333333333, 0.627616412422208 }, Flags = { Linear = true } },
            [21] = { 0.627300536650603, LH = { 20.6666666666667, 0.627458474536406 }, RH = { 21.3333333333333, 0.627134159335788 }, Flags = { Linear = true } },
            [22] = { 0.626801404706159, LH = { 21.6666666666667, 0.626967782020974 }, RH = { 22.3333333333333, 0.626660345678381 }, Flags = { Linear = true } },
            [23] = { 0.626378227622825, LH = { 22.6666666666667, 0.626519286650603 }, RH = { 23.3333333333333, 0.626198588348134 }, Flags = { Linear = true } },
            [24] = { 0.625839309798751, LH = { 23.6666666666667, 0.626018949073442 }, RH = { 24.3333333333333, 0.625651231095047 }, Flags = { Linear = true } },
            [25] = { 0.62527507368764, LH = { 24.6666666666667, 0.625463152391344 }, RH = { 25.3333333333333, 0.625108696372825 }, Flags = { Linear = true } },
            [26] = { 0.624775941743196, LH = { 25.6666666666667, 0.624942319058011 }, Flags = { Linear = true } }
         }
      },
      PipeRouter1 = PipeRouter {
         Inputs = {
            Input = Input {
               SourceOp = "Background2",
               Source = "Output",
            },
         },
         ViewInfo = PipeRouterInfo { Pos = { 931.996, 172.818 } },
      },
      Background2 = Background {
         CtrlWZoom = false,
         Inputs = {
            GlobalOut = Input { Value = 25, },
            Width = Input { Value = 3840, },
            Height = Input { Value = 2160, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
         },
         ViewInfo = OperatorInfo { Pos = { 831.333, 177.667 } },
      },
      MatteControl1 = MatteControl {
         Inputs = {
            Filter = Input { Value = FuID { "Fast Gaussian" }, },
            ["Garbage.Matte"] = Input {
               SourceOp = "BSpline1",
               Source = "Mask",
            },
            Background = Input {
               SourceOp = "PipeRouter1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 943.336, 270.394 } },
      },
      BSpline1 = BSplineMask {
         DrawMode = "ModifyOnly",
         DrawMode2 = "InsertAndModify",
         Inputs = {
            Level = Input { Value = 0.497, },
            Filter = Input { Value = FuID { "Fast Gaussian" }, },
            MaskWidth = Input { Value = 3840, },
            MaskHeight = Input { Value = 2160, },
            PixelAspect = Input { Value = { 1, 1 }, },
            ClippingMode = Input { Value = FuID { "None" }, },
            Center = Input {
               Value = { 0.453534392987416, 0.62527507368764 },
               Expression = "Point(Tracker1.TrackedCenter1.X, Tracker1.TrackedCenter1.Y)",
            },
            Polyline = Input {
               Value = BSplinePolyline {
                  Closed = true,
                  Points = {
                     { X = -0.045888997934893, Y = 0.0599918756722473 },
                     { X = -0.0553534730099017, Y = -0.0538040740581206 },
                     { X = 0.0181717305554408, Y = -0.0763154517563107 },
                     { X = 0.0386183340228137, Y = -0.0145253072129659 },
                     { X = 0.010467319841968, Y = 0.0490380907609375 }
                  },
                  Order = 4,
                  Type = "Tensioned",
                  Knots = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 }
               },
            },
            Polyline2 = Input {
               Value = BSplinePolyline {
                  Order = 4,
                  Type = "Tensioned",
                  Knots = { }
               },
               Disabled = true,
            },
         },
         ViewInfo = OperatorInfo { Pos = { 1050.67, 271 } },
      }
   }
}

Re: Animated BSpline spline outline won't update

PostPosted: Sat Jun 04, 2022 9:07 am
by birdseye
That looks very similar to what happens with the Planar Tracker, when using corner pin.. The corner pin area and grid detach from the tracker after one pass of each key frame. They only attach again if the corner pin and/or grid is disabled ans re enabled.
Out of curiosity I tried the corner pin again and clear cache also connects the corner pin spline and surface grid. I appears to be the same bug in both cases.

Re: Animated BSpline spline outline won't update

PostPosted: Sat Jun 04, 2022 10:17 am
by Tim Harris
Interesting to hear that it is not just related to this setup, I do hope that it gets fixed soon. It was not a problem a few versions back.

Re: Animated BSpline spline outline won't update

PostPosted: Sat Jun 04, 2022 5:02 pm
by birdseye
The case I refer to, HAS been there since at least v16. New bugs introduced in v17 would include, default node setting not saving and one point tracker mode omitted, to name but two.

Re: Animated BSpline spline outline won't update

PostPosted: Mon Jun 06, 2022 5:56 am
by Tim Harris
This has been there that I recall since V17 and most likely in V16, I know it was not there before that.
Like the pick whip issue that I also posted, it's a new problem only in the last couple of versions.
Let us hope they get some love and have them fixed soon.

Re: Animated BSpline spline outline won't update

PostPosted: Sat Jun 25, 2022 9:39 am
by Tim Harris
Fixed in the latest version! Thanks so much, appreciated!