[Bf-funboard] Parenting constraints

Matt Ebb bf-funboard@blender.org
Wed, 9 Jul 2003 11:32:19 +1000

Quoting Daniel Fairhead <madprof@uk2.net>:

> > Here's a real-world question - and one that I've
> > actually run into concerning parenting and
> > constraints:
> > How do you simply animate two characters playing catch
> > with a ball, throwing it back and forth between them?
> > With the current system you could have the ball
> > constrained to copy the location of both character's
> > hands, then edit the IPO to influence the ball only
> > while in the possession of one character at a time, I
> > suppose.  An easier way might be to edit the
> > inheritance of two parents, if the parenting system
> > were a little more elaborate?  Just curious.
> Call me old-fasioned, but I'd animate it without constraints
> or parenting, using direct IPO positioning.

The thing about doing it that way is that it's a lot less flexible, and more
cumbersome when you want to change things.

Just a few examples off the top of my head:

Say for example, you decide after a test render of the ball throwing that the
pose of the arm doesn't look right, and you want to move the hand up higher or
something. This would mean that you would have to re-do all the IPO keyframes of
the ball following the hand, and it's motion on the air. By using constraints,
all you need to do it move the arm up, and the ball automatically follows with it.

Constraints are also necessary when using NLA. As another example, say you are
animating a basketball game. There are lots of characters and lots of things
going on at the same time, so you can simplify the animation a lot by breaking
the animation down into actions and mixing them in NLA. If you are to use IPO
keyframing for the ball, (for example to use alongside a 'pass the ball'
action), then it takes away a lot of the advantages of the NLA system (being
that you can freely move the action strips around, speed them up or slow them
down). Using IPOs, you would have to re-do all the IPOs for the ball if you
wanted to change the position or time that the ball is passed by the character,
which is easy to do by moving the action strips. In this case, using constraints
would make things much easier to set up, and tweak.

There's a good demo file on http://download.blender.org/demo/demo225.(tgz/zip)
called (if I remember correctly) constraints_Ipo.blend which gives a simple
example of this sort of thing.