If you turn on the WorldCoord buffer in the Renderer3D, then the Translation Pick button will pick from that channel instead of the color channels, so you can get a position directly from the rendered image, which is kind of cool. The Rotation pick button will get Normals if you have those turned on.
Use Target, when turned on, will point the camera in the direction of the target position. Usually, the simplest way to use it is to use expressions to link the Target position to the 3D translations of whatever you want it to stay aimed at. Unfortunately, Fusion doesn't have any way of understanding parenting, so if your object's actual location is indirect, you may need to get clever to find a way of getting that derived information.
One thing to take note if is that the rotations are added to the camera
after the Use Target evaluation. So zero out all of the camera rotations first to establish your base, then adjust them from there if necessary.
Generally, though, the simplest way to get a revolving camera is to make sure your point of rotation is at world [0,0,0]—Translate the entire scene if you have to—then use a Transform3D to rotate the camera. It will revolve around that center location.
Just for fun, I did a bit of a ridiculous experiment involving world coordinates, tracking a CG object, and a Probe modifier:
- Code: Select all
{
Tools = ordered() {
Merge3D2 = Merge3D {
Inputs = {
SceneInput1 = Input {
SourceOp = "Merge3D1",
Source = "Output",
},
SceneInput2 = Input {
SourceOp = "RenderCam",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 3300, -214.5 } },
},
RenderCam = Camera3D {
NameSet = true,
CustomData = {
Settings = {
[1] = {
Tools = ordered() {
Camera3D1_8 = Camera3D {
Inputs = {
ApertureW = Input { Value = 0.831496062992126 },
AoV = Input { Value = 19.2642683071402 },
["Stereo.Mode"] = Input { Value = FuID { "OffAxis" } },
["MtlStdInputs.MaterialID"] = Input { Value = 1 },
ApertureH = Input { Value = 0.467716535433071 },
FilmGate = Input { Value = FuID { "BMD_URSA_4K_16x9" } },
["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 1 }
},
Name = "Camera3D1_8",
CtrlWZoom = false,
ViewInfo = OperatorInfo { Pos = { -2750, -1897.5 } },
CustomData = {
}
}
}
},
[6] = {
Tools = ordered() {
Camera3D1_8 = Camera3D {
Inputs = {
FLength = Input { Value = 49.0568334445481 },
["Transform3DOp.Translate.Z"] = Input { Expression = "self.ImageInput.Metadata.Translate.Z" },
ImagePlaneEnabled = Input { Value = 0 },
AoV = Input {
Value = 19.2642683071402,
Expression = "self.ImageInput.Metadata.RSCameraFOV or self.ImageInput.Metadata['rs/camera/fov']"
},
AovType = Input { Value = 1 },
["Transform3DOp.Rotate.Y"] = Input { Expression = "self.ImageInput.Metadata.Rotate.Y" },
ApertureH = Input { Value = 0.9 },
FilmGate = Input { Value = FuID { "HD" } },
["Transform3DOp.Rotate.X"] = Input { Expression = "self.ImageInput.Metadata.Rotate.X" },
["Transform3DOp.Translate.X"] = Input { Expression = "self.ImageInput.Metadata.Translate.X" },
PlaneOfFocus = Input { Expression = "self.ImageInput.Metadata.RSCameraDOFFocusDistance or self.ImageInput.Metadata['rs/camera/DOFFocusDistance']" },
FilmBack = Input { Value = 1 },
["Transform3DOp.Rotate.RotOrder"] = Input { Value = FuID { "ZXY" } },
["Transform3DOp.Rotate.Z"] = Input { Expression = "self.ImageInput.Metadata.Rotate.Z" },
["Stereo.Mode"] = Input { Value = FuID { "OffAxis" } },
ApertureW = Input { Value = 1.6 },
["Transform3DOp.Translate.Y"] = Input { Expression = "self.ImageInput.Metadata.Translate.Y" },
["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 1 },
["MtlStdInputs.MaterialID"] = Input { Value = 1 }
},
CtrlWZoom = false,
ViewInfo = OperatorInfo { Pos = { 550, -676.5 } },
CustomData = {
}
}
}
}
}
},
Inputs = {
["Transform3DOp.Translate.X"] = Input { Value = 14.0184229301414, },
["Transform3DOp.Translate.Y"] = Input { Value = 3.35183785596733, },
["Transform3DOp.Translate.Z"] = Input { Value = 19.2947038745652, },
["Transform3DOp.UseTarget"] = Input { Value = 1, },
["Transform3DOp.Target.X"] = Input {
SourceOp = "Probe1",
Source = "Red",
},
["Transform3DOp.Target.Y"] = Input {
SourceOp = "Probe1",
Source = "Green",
},
["Transform3DOp.Target.Z"] = Input {
SourceOp = "Probe1",
Source = "Blue",
},
FLength = Input { Value = 18.2123442718302, },
["Stereo.Mode"] = Input { Value = FuID { "OffAxis" }, },
FilmGate = Input { Value = FuID { "BMD_URSA_4K_16x9" }, },
["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 1, },
["MtlStdInputs.MaterialID"] = Input { Value = 1, },
},
ViewInfo = OperatorInfo { Pos = { 3300, -280.5 } },
},
Probe1 = Probe {
CtrlWZoom = false,
Inputs = {
ImageToProbe = Input {
SourceOp = "CopyAux1",
Source = "Output",
},
Position = Input {
SourceOp = "Tracker1_1",
Source = "Position2",
},
},
},
Shape3D1 = Shape3D {
Inputs = {
["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 1, },
["Transform3DOp.Translate.X"] = Input {
SourceOp = "Perturb1",
Source = "Value",
},
["Transform3DOp.Translate.Y"] = Input {
SourceOp = "Perturb2",
Source = "Value",
},
["Transform3DOp.Translate.Z"] = Input {
SourceOp = "Perturb3",
Source = "Value",
},
Shape = Input { Value = FuID { "SurfaceSphereInputs" }, },
["MtlStdInputs.MaterialID"] = Input { Value = 1, },
["SurfaceSphereInputs.Radius"] = Input { Value = 0.26, },
["SurfaceSphereInputs.ObjectID.ObjectID"] = Input { Value = 2, }
},
ViewInfo = OperatorInfo { Pos = { 2915, -247.5 } },
},
Perturb1 = PerturbNumber {
CtrlWZoom = false,
Inputs = {
RandomSeed = Input { Value = 29793, },
},
},
Perturb2 = PerturbNumber {
CtrlWZoom = false,
Inputs = {
RandomSeed = Input { Value = 17438, },
},
},
Perturb3 = PerturbNumber {
CtrlWZoom = false,
Inputs = {
RandomSeed = Input { Value = 26328, },
},
},
Merge3D1 = Merge3D {
Inputs = {
SceneInput1 = Input {
SourceOp = "Shape3D1",
Source = "Output",
},
SceneInput2 = Input {
SourceOp = "CoordinateScan",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 3025, -214.5 } },
},
CoordinateScan = Camera3D {
NameSet = true,
CustomData = {
Settings = {
[1] = {
Tools = ordered() {
Camera3D1_8 = Camera3D {
Inputs = {
ApertureW = Input { Value = 0.831496062992126 },
AoV = Input { Value = 19.2642683071402 },
["Stereo.Mode"] = Input { Value = FuID { "OffAxis" } },
["MtlStdInputs.MaterialID"] = Input { Value = 1 },
ApertureH = Input { Value = 0.467716535433071 },
FilmGate = Input { Value = FuID { "BMD_URSA_4K_16x9" } },
["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 1 }
},
Name = "Camera3D1_8",
CtrlWZoom = false,
ViewInfo = OperatorInfo { Pos = { -2750, -1897.5 } },
CustomData = {
}
}
}
},
[6] = {
Tools = ordered() {
Camera3D1_8 = Camera3D {
Inputs = {
FLength = Input { Value = 49.0568334445481 },
["Transform3DOp.Translate.Z"] = Input { Expression = "self.ImageInput.Metadata.Translate.Z" },
ImagePlaneEnabled = Input { Value = 0 },
AoV = Input {
Value = 19.2642683071402,
Expression = "self.ImageInput.Metadata.RSCameraFOV or self.ImageInput.Metadata['rs/camera/fov']"
},
AovType = Input { Value = 1 },
["Transform3DOp.Rotate.Y"] = Input { Expression = "self.ImageInput.Metadata.Rotate.Y" },
ApertureH = Input { Value = 0.9 },
FilmGate = Input { Value = FuID { "HD" } },
["Transform3DOp.Rotate.X"] = Input { Expression = "self.ImageInput.Metadata.Rotate.X" },
["Transform3DOp.Translate.X"] = Input { Expression = "self.ImageInput.Metadata.Translate.X" },
PlaneOfFocus = Input { Expression = "self.ImageInput.Metadata.RSCameraDOFFocusDistance or self.ImageInput.Metadata['rs/camera/DOFFocusDistance']" },
FilmBack = Input { Value = 1 },
["Transform3DOp.Rotate.RotOrder"] = Input { Value = FuID { "ZXY" } },
["Transform3DOp.Rotate.Z"] = Input { Expression = "self.ImageInput.Metadata.Rotate.Z" },
["Stereo.Mode"] = Input { Value = FuID { "OffAxis" } },
ApertureW = Input { Value = 1.6 },
["Transform3DOp.Translate.Y"] = Input { Expression = "self.ImageInput.Metadata.Translate.Y" },
["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 1 },
["MtlStdInputs.MaterialID"] = Input { Value = 1 }
},
CtrlWZoom = false,
ViewInfo = OperatorInfo { Pos = { 550, -676.5 } },
CustomData = {
}
}
}
}
}
},
Inputs = {
["Transform3DOp.Translate.Z"] = Input { Value = 28.65, },
AoV = Input { Value = 19.2642683071402, },
["Stereo.Mode"] = Input { Value = FuID { "OffAxis" }, },
FilmGate = Input { Value = FuID { "BMD_URSA_4K_16x9" }, },
ApertureW = Input { Value = 0.831496062992126, },
ApertureH = Input { Value = 0.467716535433071, },
["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 1, },
["MtlStdInputs.MaterialID"] = Input { Value = 1, },
},
ViewInfo = OperatorInfo { Pos = { 2915, -214.5 } },
},
CopyAux1 = Dimension.CopyAux {
Inputs = {
Channel = Input { Value = FuID { "WorldPos" }, },
Input = Input {
SourceOp = "Renderer3D1",
Source = "Output",
},
},
ViewInfo = OperatorInfo { Pos = { 3245, -181.5 } },
},
Renderer3D1 = Renderer3D {
CustomData = {
ToolVersion = 2,
},
Inputs = {
GlobalIn = Input { Value = 1001, },
GlobalOut = Input { Value = 1071, },
Width = Input { Value = 3840, },
Height = Input { Value = 2160, },
Depth = Input { Value = 3, },
["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
SceneInput = Input {
SourceOp = "Merge3D1",
Source = "Output",
},
CameraSelector = Input { Value = FuID { "CoordinateScan" }, },
["RendererSoftware.Channels.Nest"] = Input { Value = 1, },
["RendererSoftware.Channels.WorldCoord"] = Input { Value = 1, },
},
ViewInfo = OperatorInfo { Pos = { 3135, -181.5 } },
},
Tracker1_1 = Tracker {
Trackers = {
{
PatternTime = 1037,
PatternX = 0.492576664173523,
PatternY = 0.479787234042553
}
},
CtrlWZoom = false,
Inputs = {
Input = Input {
SourceOp = "Renderer3D1",
Source = "Output",
},
MatchMoveSettings = Input { Value = 1, },
Name2 = Input { Value = "Tracker 2", },
PatternCenter2 = Input { Value = { 0.468414880319356, 0.497770451635146 }, },
PatternWidth2 = Input { Value = 0.0532161555721765, },
PatternHeight2 = Input { Value = 0.0936170212765957, },
SearchWidth2 = Input { Value = 0.232498130142109, },
SearchHeight2 = Input { Value = 0.353191489361702, },
TrackedCenter2 = Input {
SourceOp = "Tracker1_1Tracker2XYPath",
Source = "Value",
},
},
ViewInfo = OperatorInfo { Pos = { 3245, -148.5 } },
UserControls = ordered() {
UpdateReferenceFrame = {
INP_Integer = false,
LINKID_DataType = "Number",
BTNCS_Execute = "RunScript([[S:\\net_exe\\BlackMagic\\fusion9\\scripts\\Tool\\updateTrackerReferenceFrame.lua]])",
ICS_ControlPage = "Operation",
INPID_InputControl = "ButtonControl",
LINKS_Name = "Update Reference Frame"
}
}
},
Tracker1_1Tracker2XYPath = XYPath {
ShowKeyPoints = false,
DrawMode = "ModifyOnly",
NameSet = true,
Inputs = {
X = Input {
SourceOp = "XYPath1X",
Source = "Value",
},
Y = Input {
SourceOp = "XYPath1Y",
Source = "Value",
},
},
},
XYPath1X = BezierSpline {
SplineColor = { Red = 255, Green = 0, Blue = 0 },
NameSet = true,
KeyFrames = {
[1001] = { 0.468414880319356, RH = { 1001.33, 0.468378625436544 }, Flags = { Linear = true } },
[1002] = { 0.468305017038106, LH = { 1001.67, 0.468341271920919 }, RH = { 1002.33, 0.468300317331075 }, Flags = { Linear = true } },
[1003] = { 0.468290775501648, LH = { 1002.67, 0.468295475208679 }, RH = { 1003.33, 0.468311588489929 }, Flags = { Linear = true } },
[1004] = { 0.468353845163106, LH = { 1003.67, 0.468333032174825 }, RH = { 1004.33, 0.468407556100606 }, Flags = { Linear = true } },
[1005] = { 0.468516605579773, LH = { 1004.67, 0.468462894642273 }, RH = { 1005.33, 0.468570316517273 }, Flags = { Linear = true } },
[1006] = { 0.468679365996439, LH = { 1005.67, 0.468625655058939 }, RH = { 1006.33, 0.468788130644877 }, Flags = { Linear = true } },
[1007] = { 0.469008955840189, LH = { 1006.67, 0.468900191191752 }, RH = { 1007.33, 0.469098921660502 }, Flags = { Linear = true } },
[1008] = { 0.469281579538106, LH = { 1007.67, 0.469191613717794 }, RH = { 1008.33, 0.469442712350606 }, Flags = { Linear = true } },
[1009] = { 0.469769860788106, LH = { 1008.67, 0.469608727975606 }, RH = { 1009.33, 0.469894738717794 }, Flags = { Linear = true } },
[1010] = { 0.470148278756856, LH = { 1009.67, 0.470023400827169 }, RH = { 1010.33, 0.470357080026387 }, Flags = { Linear = true } },
[1011] = { 0.470781009876648, LH = { 1010.67, 0.470572208607117 }, RH = { 1011.33, 0.470936100208679 }, Flags = { Linear = true } },
[1012] = { 0.471250980579773, LH = { 1011.67, 0.471095890247742 }, RH = { 1012.33, 0.471505436146179 }, Flags = { Linear = true } },
[1013] = { 0.472022058053731, LH = { 1012.67, 0.471767602487325 }, RH = { 1013.33, 0.472300683542012 }, Flags = { Linear = true } },
[1014] = { 0.472866377715189, LH = { 1013.67, 0.472587752226908 }, RH = { 1014.33, 0.473063094023783 }, Flags = { Linear = true } },
[1015] = { 0.473462487741231, LH = { 1014.67, 0.473265771432637 }, RH = { 1015.33, 0.473776696725606 }, Flags = { Linear = true } },
[1016] = { 0.474414636178731, LH = { 1015.67, 0.474100427194356 }, RH = { 1016.33, 0.474632836862325 }, Flags = { Linear = true } },
[1017] = { 0.475075850371439, LH = { 1016.67, 0.474857649687846 }, RH = { 1017.33, 0.475417586211283 }, Flags = { Linear = true } },
[1018] = { 0.476111413522481, LH = { 1017.67, 0.475769677682637 }, RH = { 1018.33, 0.476345727487325 }, Flags = { Linear = true } },
[1019] = { 0.476821455840189, LH = { 1018.67, 0.476587141875346 }, RH = { 1019.33, 0.477184004668314 }, Flags = { Linear = true } },
[1020] = { 0.477920088652689, LH = { 1019.67, 0.477557539824565 }, RH = { 1020.33, 0.478292708281596 }, Flags = { Linear = true } },
[1021] = { 0.479049239043314, LH = { 1020.67, 0.478676619414408 }, RH = { 1021.33, 0.479296980742533 }, Flags = { Linear = true } },
[1022] = { 0.479799971465189, LH = { 1021.67, 0.479552229765971 }, RH = { 1022.33, 0.480180647734721 }, Flags = { Linear = true } },
[1023] = { 0.480953535918314, LH = { 1022.67, 0.480572859648783 }, RH = { 1023.33, 0.481205977324564 }, Flags = { Linear = true } },
[1024] = { 0.481718509876648, LH = { 1023.67, 0.481466068470398 }, RH = { 1024.33, 0.482095157825867 }, Flags = { Linear = true } },
[1025] = { 0.482859867298523, LH = { 1024.67, 0.482483219349304 }, RH = { 1025.33, 0.483110294544617 }, Flags = { Linear = true } },
[1026] = { 0.483618737741231, LH = { 1025.67, 0.483368310495137 }, RH = { 1026.33, 0.483989343209981 }, Flags = { Linear = true } },
[1027] = { 0.484741784616231, LH = { 1026.67, 0.484371179147481 }, RH = { 1027.33, 0.4849841552217 }, Flags = { Linear = true } },
[1028] = { 0.485476240996439, LH = { 1027.67, 0.485233870390971 }, RH = { 1028.33, 0.485832075957377 }, Flags = { Linear = true } },
[1029] = { 0.486554528756856, LH = { 1028.67, 0.486198693795919 }, RH = { 1029.33, 0.486897607370137 }, Flags = { Linear = true } },
[1030] = { 0.487594160918314, LH = { 1029.67, 0.487251082305033 }, RH = { 1030.33, 0.487817732695658 }, Flags = { Linear = true } },
[1031] = { 0.488271651152689, LH = { 1030.67, 0.488048079375346 }, RH = { 1031.33, 0.488591231230814 }, Flags = { Linear = true } },
[1032] = { 0.489240075631856, LH = { 1031.67, 0.488920495553731 }, RH = { 1032.33, 0.4894421630342 }, Flags = { Linear = true } },
[1033] = { 0.489852461699564, LH = { 1032.67, 0.489650374297221 }, RH = { 1033.33, 0.490143843535502 }, Flags = { Linear = true } },
[1034] = { 0.490735436959981, LH = { 1033.67, 0.490444055124044 }, RH = { 1034.33, 0.490920068307637 }, Flags = { Linear = true } },
[1035] = { 0.491294925892273, LH = { 1034.67, 0.491110294544617 }, RH = { 1035.33, 0.491555423939148 }, Flags = { Linear = true } },
[1036] = { 0.492084313913106, LH = { 1035.67, 0.491823815866231 }, RH = { 1036.33, 0.492246789499044 }, Flags = { Linear = true } },
[1037] = { 0.492576664173523, LH = { 1036.67, 0.492414188587585 }, Flags = { Linear = true } }
}
},
XYPath1Y = BezierSpline {
SplineColor = { Red = 0, Green = 255, Blue = 0 },
NameSet = true,
KeyFrames = {
[1001] = { 0.497770451635146, RH = { 1001.33, 0.49676665389209 }, Flags = { Linear = true } },
[1002] = { 0.494728640292553, LH = { 1001.67, 0.495732438035609 }, RH = { 1002.33, 0.493735584736998 }, Flags = { Linear = true } },
[1003] = { 0.491719381033294, LH = { 1002.67, 0.49271243658885 }, RH = { 1003.33, 0.490739454818016 }, Flags = { Linear = true } },
[1004] = { 0.488749907653664, LH = { 1003.67, 0.489729833868942 }, RH = { 1004.33, 0.487602880743942 }, Flags = { Linear = true } },
[1005] = { 0.485274068533294, LH = { 1004.67, 0.486421095443016 }, RH = { 1005.33, 0.484340691797183 }, Flags = { Linear = true } },
[1006] = { 0.482445654181442, LH = { 1005.67, 0.483379030917553 }, RH = { 1006.33, 0.481543310431442 }, Flags = { Linear = true } },
[1007] = { 0.479711279181442, LH = { 1006.67, 0.480613622931442 }, RH = { 1007.33, 0.478834000535609 }, Flags = { Linear = true } },
[1008] = { 0.477052859042553, LH = { 1007.67, 0.477930137688387 }, RH = { 1008.33, 0.47621854914672 }, Flags = { Linear = true } },
[1009] = { 0.474524647236998, LH = { 1008.67, 0.475358957132831 }, RH = { 1009.33, 0.473723757480053 }, Flags = { Linear = true } },
[1010] = { 0.47209770857959, LH = { 1009.67, 0.472898598336535 }, RH = { 1010.33, 0.471342174725424 }, Flags = { Linear = true } },
[1011] = { 0.469808212051813, LH = { 1010.67, 0.470563745905979 }, RH = { 1011.33, 0.469092066218479 }, Flags = { Linear = true } },
[1012] = { 0.467638073162924, LH = { 1011.67, 0.468354218996257 }, RH = { 1012.33, 0.466844344864313 }, Flags = { Linear = true } },
[1013] = { 0.465232835894405, LH = { 1012.67, 0.466026564193016 }, RH = { 1013.33, 0.464627692665239 }, Flags = { Linear = true } },
[1014] = { 0.463399068533294, LH = { 1013.67, 0.464004211762461 }, RH = { 1014.33, 0.462844055512461 }, Flags = { Linear = true } },
[1015] = { 0.461717210894405, LH = { 1014.67, 0.462272223915238 }, RH = { 1015.33, 0.461215908811072 }, Flags = { Linear = true } },
[1016] = { 0.460198113672183, LH = { 1015.67, 0.460699415755516 }, RH = { 1016.33, 0.459752909679127 }, Flags = { Linear = true } },
[1017] = { 0.458849010662924, LH = { 1016.67, 0.459294214655979 }, RH = { 1017.33, 0.458464679065701 }, Flags = { Linear = true } },
[1018] = { 0.45768436945922, LH = { 1017.67, 0.458068701056442 }, RH = { 1018.33, 0.457357329528664 }, Flags = { Linear = true } },
[1019] = { 0.456693339366627, LH = { 1018.67, 0.457020379297183 }, RH = { 1019.33, 0.456434333290238 }, Flags = { Linear = true } },
[1020] = { 0.455908472468479, LH = { 1019.67, 0.456167478544868 }, RH = { 1020.33, 0.455679305801813 }, Flags = { Linear = true } },
[1021] = { 0.455214028024035, LH = { 1020.67, 0.455443194690701 }, RH = { 1021.33, 0.455110186878201 }, Flags = { Linear = true } },
[1022] = { 0.454899357885146, LH = { 1021.67, 0.455003199030979 }, RH = { 1022.33, 0.454863550593479 }, Flags = { Linear = true } },
[1023] = { 0.454790850940701, LH = { 1022.67, 0.454826658232368 }, RH = { 1023.33, 0.454833819690701 }, Flags = { Linear = true } },
[1024] = { 0.454921059274035, LH = { 1023.67, 0.454878090524035 }, RH = { 1024.33, 0.455042804065701 }, Flags = { Linear = true } },
[1025] = { 0.455289982885146, LH = { 1024.67, 0.455168238093479 }, RH = { 1025.33, 0.455495278024035 }, Flags = { Linear = true } },
[1026] = { 0.455912089366627, LH = { 1025.67, 0.455706794227738 }, RH = { 1026.33, 0.456198547699961 }, Flags = { Linear = true } },
[1027] = { 0.456780144922183, LH = { 1026.67, 0.45649368658885 }, RH = { 1027.33, 0.45714896002635 }, Flags = { Linear = true } },
[1028] = { 0.457897766449961, LH = { 1027.67, 0.457528951345794 }, RH = { 1028.33, 0.458353712630516 }, Flags = { Linear = true } },
[1029] = { 0.459279421542553, LH = { 1028.67, 0.458823475361998 }, RH = { 1029.33, 0.459939469285609 }, Flags = { Linear = true } },
[1030] = { 0.461279566218479, LH = { 1029.67, 0.460619518475424 }, RH = { 1030.33, 0.461920516739313 }, Flags = { Linear = true } },
[1031] = { 0.463221840524035, LH = { 1030.67, 0.462580890003201 }, RH = { 1031.33, 0.463942760662924 }, Flags = { Linear = true } },
[1032] = { 0.465406447005516, LH = { 1031.67, 0.464685526866627 }, RH = { 1032.33, 0.466209723915238 }, Flags = { Linear = true } },
[1033] = { 0.46784061945922, LH = { 1032.67, 0.467037342549498 }, RH = { 1033.33, 0.468717898105053 }, Flags = { Linear = true } },
[1034] = { 0.470499039598109, LH = { 1033.67, 0.469621760952276 }, RH = { 1034.33, 0.47145390070922 }, Flags = { Linear = true } },
[1035] = { 0.473392558116627, LH = { 1034.67, 0.472437697005516 }, RH = { 1035.33, 0.474414259505516 }, Flags = { Linear = true } },
[1036] = { 0.476488622931442, LH = { 1035.67, 0.475466921542553 }, RH = { 1036.33, 0.477577164598109 }, Flags = { Linear = true } },
[1037] = { 0.479787234042553, LH = { 1036.67, 0.478698692375887 }, Flags = { Linear = true } }
}
}
}
}
Fusion may or may not crash—there's a potential feedback loop. Oh, and the keyframes begin at frame 1001, so adjust your global range if you want to see my own tracking. Or you can just retrack it yourself from whatever your default global in is.
The CoordinateScan camera is used to watch the sphere, then world coordinates are created from that camera in the Renderer3D. I copy those coordinates to RGB so the Probe modifier can sample them, track the sphere, and connect the Center of the Probe to the Offset Position of the tracker.
There's a bit of a bug in Probe. When you first create one, the channel it samples is clamped. So you usually have to connect a second control to it, then remove the first one and Connect To again to get access to its full range. In this case, you'll find the RenderCam's Target Position controls connected to the Probe.