Jump to content
Hash, Inc. Forums

Self steering car


R Reynolds

Recommended Posts

I know there's a few automobile modelers on this forum, this thread is for them.

 

While animating a car turning a corner on my city street back lot, I realized that keeping the center (black) bone of a model tangent to a sharply curved path only produces believable results for short (in the Z direction) models. When a longer object, like a car (or pickup truck), goes around a tight curve both the front and rear wheels do a lot of sliding with respect to the ground. After some experimentation, I have a suggestion that may require some (perhaps painful) re-working of existing models but will pay dividends if you want your models to turn tight corners convincingly and steer themselves in the bargain (eat your heart out Waymo).

 

The first step is to move the model so Z=0 is located at the rear wheels.

pickup_steering_side.jpg

This is no big deal if your building from scratch. But an existing model needs to have all patches (easy), all bones, center of groups and projection maps (time consuming in my case) shifted.

 

The first assigned bone, the steering bone, controls the axles, steering pivots and wheels (children of the axles). This bone, starting at z=0, is oriented such that it's roll handle aims towards the front axle.

pickup_steering_bones.jpg

After this the chassis and body are assigned a bone for rolling. The steering wheel gets its own bone for rolling. After setting up your action for stride length and wheel rotation, you need a few more constraints. The front wheel pivots are set to roll like the steering bone at 100% scaling. The body bone rolls like the steering bone with 20% scaling (or to your taste) while the steering wheel bone rolls like the steering bone with 500% scaling (or to your taste).

 

The self steering part comes after you drop the vehicle on its path and add a null to follow the same path. Adjust the ease of both the null and vehicle such that the null is always located ahead of the rear axle throughout the length of the scene. I set it near the front axle.

pickup_steering.jpg

Then add a constraint to the steering bone so it's roll handle always point at the null. The result is fairly believable vehicle dynamics; exhibit A being the attached 47 sec. clip. And this is before any tweaks to the truck's ease to make it speedup and slow down as you may see fit.

 

pickup_steering_lores.mp4

 

 

  • ____ 1
Link to comment
Share on other sites

 

I am surprised you didn't add the effect of the squashed rubber at the tire's bottom(distortion box?)

tire_distort.jpg

To make that work I think you'd need a very high resolution tire so that there are enough cp's at every point of contact. It would be nice to be that accurate but I don't think it's worth the overhead.I typically run my cars slightly below the surface they're "sitting" on to suggest a flat contact area.

 

 

Adding any body roll and bounce from the suspension?

I assume you mean automatic body and wheel movements based on the roughness of the road. I think you'd need reference bones that track the surface at each tire contact point and then constrain each tire axle bone to follow them. Meanwhile the body needs it's own surface tracking bone to which it is partially constrained so it averages out the roughness. Once again, an interesting exercise but this is a '53 Chevy pickup not a Baja dune buggy. If I need to show it's wheels bouncing over a railroad track, it's easier to key frame an action.

Link to comment
Share on other sites

  • 5 months later...
  • Hash Fellow

Now that I have a rigged driver, no more autonomous vehicles. The chor is identical to the one in the first post. There is a constraint target for each hand control and the Saucy rig does the rest.

 

attachicon.gifpickup_with_driver.mp4

 

 

that looks wonderful, Rodger!

Link to comment
Share on other sites

Looking good Rodger- I did some work on that 'flat tire' effect we talked about above... my project is in Robcat's 'flat tire' thread. Rob's approach involves animating the UV coordinates on a mesh that is static whereas my 'distortion box' approach allows for any geometry/decals to 'roll-thru' the effect as the wheel spins. I doubled the resolution of the tire to 16 lathed subdivisions and that seemed to be sufficient geometry to work. Link to gif - https://media.giphy.com/media/SiGHN0yXafUYEKgmDy/giphy.gif

Link to comment
Share on other sites

  • 4 weeks later...

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...