How to create tracked Callouts?

I’m trying to do what I think should be a simple thing, but I just can’t seem to figure it out. Basically I want to do this in Natron: https://youtu.be/FLItnA6BSYs

Just a simple callout where one end is tracked to an object and the other goes to a stationary title.

I couldn’t find a path tool anywhere, so I figured I might be able to do it with the rotopaint tool since it can create Bezier lines, just create a two point Bezier, track an object, link the tracker data to one of the points and place the other point where I want it to be in the scene, but I can’t seem to figure out how to link the tracker data to just one point, I can link it to the whole Bezier, but not an individual point.

I’m sure I’m just missing something here, I’m pretty new to Natron, I would sincerely appreciate some advice!

Thanks!

I can tell you how to do it in Fusion (free version).

From my knowledge, I think we can do it in Natron only if we know how to code. We have to change the value of the point to match the tracker. Natron doesn’t have that magical “=” like Fusion so we can only do it by coding.

Thanks for the info, I’ve done it in Fusion, but I’m trying to move to an all open source tool chain and I want to eliminate Fusion from my process, if I can.

I started to look into how to do this in code so I could create a plugin for it and I think it should be able to be done via groups and setting expressions on user parameters, what I can’t figure out is how to find the available attributes of the current node. For example, I create a rotopaint node and I can access it’s attributes via Group1.RotoPaint1. and I can set things like BrushSize but I can’t figure out how to grab the Bezier points. I was looking through the developer reference and I can see that we can create and reference Bezier points by their index value, so I think I should be able to reference the points and adjust their coordinates from a user parameter if I can just figure out what their called. I wish we had something like an Intelisense system where it would show the possible attributes of the object in a drop down overlay.

It’s possible this can’t be done via groups and user expressions and might have to be done via a script instead, I’m just not really sure where to start on this.

I think I’m going to drop this for now for this project and I’ll just manually roto what I want to do, but I’m going to look at some other plugins code and see if I can figure this out, and if I do, I’ll create a plugin for this so it’s easier in the future. I would definitely appreciate any references that might lead me to a solution!

1 Like

(post withdrawn by author, will be automatically deleted in 24 hours unless flagged)

I found that we can link a point of Roto node to a track in Nuke. The Roto in both softwares look similiar, I wonder if you are able to look at Nuke source code. Just a suggestion.

Nuke is closed source and proprietary so the source code isn’t available anywhere. The best you can do is look at the Roto node documentation

I’m not a developer but I wonder if this place may has some code:

It has code but it’s more of an api and how to create plugins. It doesn’t have code on its in built nodes.