-
Faking 3D with 2D tracking data
Alright, I have a question. I’ve looked around quite a bit, so if the answer’s obvious, be gentle! Here’s what I’m needing to do:
I’ve recorded a subject on a greenscreen with tracking markers. I’ve used AE’s tracker to get tracking data. I used Mocha, too, but it seems that for this, I’m not needing a planar tracker. But if Mocha’s the tool to use for this, someone let me know. Since I’m wanting to parent to a Null, I’m just using X, Y, and Scale.
What I’d like to do is place my subject in a new 3D environment. And I get that my tracking software is 2D tracking, but it seems to me that using the Scale data, one could use that in place of Z depth for a 3D camera’s position in After Effects. Could you fake it this way? (The camera doesn’t zoom, but is hand-held, and has some in and out motion.) That way my original footage would stay 2D, but I could add a 3D camera and some 3D layers that would follow the movements of my real-world camera.
Or, here’s another approach. We’ll forget about moving a 3D camera and move layers instead. Currently using just my greenscreen replacement and tracking data, I can easily insert a new BG and make it look integrated into the hand-held footage. But if I insert multiple layers, they’re all moving the same way and at the same rate, and looking like they’re the same distance away from my subject as the greenscreen was, which is about 15 feet. If it were real-world 3D, the layer furthest back wouldn’t move as quickly as layers closer to the camera, right? So I’m thinking (and I suck at math, so Expressions folks, help me out here) I could use an expression to link the Z position of a layer to the Scale data from the tracker (probably copied onto its own Null). The scale value change is too pronounced, but like I said, I suck at math, and it seems like there would be a way to take the scale values and make them more compressed for layers that I want to appear further back. I would want to see some movement, but not as pronounced. Or maybe forget the Z-position, keep it all in 2D, but just use an expression on position and scale values to change all the tracking data to a lesser degree for layers I want to seem further away.
Does any of this make sense? Am I making things too hard? I’m just trying to see if there’s a way to fake 3D tracking from 2D data if scale is assumed to accurately represent distance, and can be extrapolated as such for different layers at different depths.