In this chapter, we saw how different animated properties can be linked together and how we could constrain the spatial properties of objects to complex limitations. We have learned how to:
Drive one IPO from another by a Python expression
Work around some limitations inherent in pydrivers
Restrict the motion of objects and bones by adding constraints
Write a constraint in Python that will snap an object to the closest vertex on another object
Next we take a look at how to perform some action every time we advance a frame in our animation.