Watched a wonderful online presentation at the iAnimate Pixel Challenge yesterday by valve animator Cameron Fielding where he described a killer method of blocking in reference video in Maya by controlling the timeline with a function curve. This allowed him to take video reference and controll the timeline playback by using traditional animation techniques (stepped keys, bezier curves, etc.). He could easily edit and retime the flow of the video with just a few frames. This let him focus on performances and poses and gave him all kinds of flexibility with his workflow. Really freed him up to concentrate on finding the powerful ‘drawing’ poses… the storytelling and emotively powerful images that are in even pedestrian reference video. Took me a few times to watch his presentation to really see what he was driving at, but once I got it… well, I really wanted to give his technique a try.
It’s actually a bit difficult to explain his process in words, but the workflow in Maya was to link video images to a plane and aim a camera at it. So far, so good. Not hard at all to do in Blender. The tricky thing he did was break the standard connection of the timeline and link the timeline’s attributes to an F-Curve. I’ve tried all kinds of things in Blender, but can’t get even close to what he was doing.
Wondering if it is possible to hook the time line playback to an F-Curve in Blender. Is it something that can be done, but requires extensive scripting or is it just out of the question completely? Or is it super simple and I’m just missing the obvious?
Thanks for any help with this. I’ve been using Blender on and off for a few years, but recently have just decided to take the plunge and make it my main worktool. Have to say I’m completely blown away by what is possible in this miracle application.
Time and FPS are not real in Blender, not Like Cinema4D where they matter. Blender just kicks out frames, one at a time. The task you describe sound more like a video editing task and there are some time stretching capabilities in the VSE but your best bet is to just do all your time stretching in a video editing program and generate a series of images that will run at the final target FPS. Then use your camera pointed at a plane setup for your final output.
The timeline is locked down and you can not change the way it works. This is easy to determine this by simply moving your mouse over the current frame and right-clicking. You will see there is no Inset Keyframe in the menu that pops up. The developers use the timeline, when rendering, to determine motion blur. So instead of writing code that actually looks at all the objects keyframe animation to determine vectors they just change to the previous frame and fetch the current values and determine the difference. This hard coded approach to solving motion blur does limit Blender’s ability to process time in non-linear ways. There is an upcoming initiative to review and revise the way object dependencies are updated this may lead to a more free timeline, but for now…
Thanks for the reply, Atom (and thanks for moving the thread to the right spot, Fweeb). I suspected what I wanted was probably not doable in Blender and after a weekend of trying everything imaginable, I’m ready to bail on the idea. I had never even thought of this approach before until Friday after I watched the stream from iAnimate, and I suspect others probably haven’t used it much either. Seems like a very unique solution he came up with on his own. And I don’t think it’s ‘easy’ to do in Maya, which is what Cameron Fielding used. You have to know how to access Maya’s timeline, decouple it from it’s standard playback code and hook it up to a curve. Maybe it’s not too difficult if you know MEL or Python, but since I don’t know either…
It’s a hard process to describe. Seeing it in action made a believer out of me and I really want to try it. Once he had things set up, it was super-easy to compress and stretch time, manipulate ‘poses’ in the reference video, stress accents, etc. And all he needed was a few sets of control keys that could be easily moved, changed to stepped, linear, bezier for different cushionings, easing-ins, etc. Really, really powerful and super intuitive.
I did look at editing clips, and combined with the grease pencil, you could hack an approximation in Blender that sort of takes baby-steps toward his workflow. Kind of a half-baked solution, and really doesn’t do the same thing, but it’s still a legit workflow and you get something sort of like of the power of his approach.
Thanks again for taking the time to explain things to me. Maybe the initiative to review the timeline will come to pass. If so, then I would really want to push to be able to link the timeline to a curve.