This is the eleventh entry of what will be a year-long journal on learning the 3D application Houdini, created by Side Effects Software. Houdini is a sophisticated application that is widely used in the production of visual effects for Hollywood films such as Big Hero 6, Mad Max: Fury Road and many others.
In my previous Learning Houdini Journal 10, I discussed the use of dynamics in animation. The Instructor, John Moncrief, in his Intro to Houdini 15 course (from pluralsight.com) takes you through a series of examples in using dynamics to animate objects in Houdini. This journal entry goes into several key parameters in dynamics that are key to getting successful and believable animation.
Bounce and Friction
What I like about Houdini as I'm learning is how logical the application is. In this case (using Dynamics) you have certain Physical parameters affect the object you are animating. And, like in the real world, friction and bounce are two of the key parameters you need to adjust to make your simulation realistic. Here's what the Houdini 15 manual says about these specific parameters:
The elasticity of the object. If two objects of bounce 1.0 collide, they will rebound without
losing energy. If two objects of bounce 0.0 collide, they will come to a standstill.
The tangential elasticity of the object. If two objects of bounce forward 1.0 collide, their
tangential motion will be affected only by friction. If two objects of bounce forward 0.0 collide,
their tangential motion will be matched.
The coefficient of friction of the object. A value of 0 means the object is frictionless.
This governs how much the tangential velocity is affected by collisions and resting contacts.
Dynamic Friction Scale
An object sliding may have a lower friction coefficient than an object at rest. This is the
scale factor that relates the two. It is not a friction coefficient, but a scale between zero and one.
A value of one means that dynamic friction is equal to static friction. A scale of zero means that
as soon as static friction is overcome the object acts without friction.
It was initially confusing to me that the parameter values for these were set to zero and one. Why not simply allow for an infinite series of numbers or, say, zero to one hundred? Well, I came to realize that it makes more sense to have fractional values in working with dynamics. Adding an .001 adjustment is actually more sensible that adding a 100 adjustment to friction. Once I got this out of my thinking, I picked the adjustments up just fine.
I also liked the fact that John Moncrief (the Intro to Houdini instructor) stepped out of the main tutorial (the speeding race car crashing out of the window to the street below) to make a clear point about how dynamics work in Houdini. Once I got into setting up the car for dynamics, it was much, much easier.
Velocity and Initial Velocity
In setting up the race car for dynamic animation, I learned that I had to position the car to come crashing out of the 8th floor window and land on the pavement below. Once I had the car in position, I made it an RBD object (rigid body dynamic) which automatically created a node. However, unless you create a ground plane for the street below (a static object) the car will simply pass through and fall until the end of the animation length on the timeline. Houdini has a simple ground plane which I used to add to the ground of the scene.
Then it was a simple matter to add Initial Velocity to the car to get it to push out through the building (I'll get the glass simulation set up later) and land on the ground below. Here is a short video I made that shows the results of this basic dynamic animation set up.
As you can see, the parameters of the animation need a lot of adjusting in order to get it too look more exciting and realistic. Adjusting velocity, bounce and friction will be the subject of my next journal.