Car suspension using softbodies

Hi everyone
It has crossed my mind that the secondary motion and flexibility of softbodies, recently implemented, could very well be used to immitate a suspension system for vehicles. This thread of course is a result of my inability to produce a decent, working example, after many, quite funny, failures.

The approach I tried at first was to constrain (using rigid body constrains) a soft body cube to four wheels with the intention of making a chassis afterwards constrained to the softbody’s top vertices. For one thing, it seems that I can only constrain to an object (particularly it’s center) and not individual vertices), and I have concluded that a softbody’s center remains rather still, despite the gelly motion of it’s vertices. I may of course be very wrong about this.

I tried to test all setups using only GUI available tools, no scripting, to keepe things simple. It seems that I have to imitate a car suspension closely for this to work, and what’s more to constrain a softbody’s motion in the z axis. After all that’s how suspension works. But I’m afraid I just don’t know the knew tools well enough.

So, any ideas?
Test/Example setups would be perfect. I don’t post any of mine cause the all failed, and I don’t want to impose my approach. If it was right it would have worked.:smiley:

Hi,

You might want to try parenting empties to the vertices of your softbody. These can be used for constraints.

I tried that, thanks, but still, the child object won’t follow the rotation of the vertices it’s been parented to.
I’ll try to post an example ASAP just to demonstrate. Who knows, maybe i can’t avoid scripting after all. But with the new Softbody addition it seems redundant to me

Hi, I have built a small scene for you. Check it here under :

The master parent is the Chassis (green flattened cube). It is animated by an Ipo to move the car. The suspension is the red Gelly object. The Gelly object is parented to the car. The bottom layer of vertices makes the Group vertex group. It is used as goal in softbody, with a weight of 1. The other vertices of the gelly objects have a weight of 0.75.

An empty is vertex parented to 3 vertices of the Gelly object.

I have used a yellow material, so you can see a yellow triangle. the 3 vertices of the triangle are those used as parent for the Empty.

The car Body is linked to the Empty by two constraints : Copy Rotation and Copy Location.

Do not parent the Body to the Empty, or you will get a deformed car ! Use the constraints instead.

These are the basics. the system can surely be improved for the wheels and else.

I hope that this Blend file will help you.

Bake the softbody object before playing the animation.

http://3d-synthesis.com/Blender_Files/Soft-Car_01.blend

You can play with the Softbldy parameters (Damping, etc…) and the weight of the vertices of the Gelly object to adjust the bounces…

Happy Blending !

Philippe.

Hi,

Roubal included the answer to this in his response - you need to parent the object/empty to more than 1 vertex to keep the rotational information (3 is ideal).

What about if you want the two halves of the suspension to be seperate? one for the front of the vehicle, etc. also, what about if you want to implement it into the game engine? so that when a wheel encounters a slight elevation it will roll over it, affecting the suspension and thus cause the front left of the car to slightly rise.

Any help would be greatly apreciated as I have big ideas but haven’t grasped blender fully yet

Hi, I dont use often the Game Engine, because I don’t make games, so I use it sometimes for physics simulation only.

This said, I’m working for several months on a new versions of my autodrive system for car. This time it is a 4x4 autodrive system, allowing automatic ground level and obstacles detection, not using the Game Engine.

I’m improving it almost each day, but the currently available release is still heavy. Since I released it I have changed many things and the system gets simpler and simpler, and also works a bit faster.

I can’t tell when I’ll be able to release a “final” version,because I have to add feature for all kinds of vehicles, from motorcycles to big trucks and tanks !
The system is complementary with my Tracks Creator system, generating tracks after the wheels in all kind of ground materials.

Two demo videos are available on my site at the top of this page :

http://3d-synthesis.com/tutorialsenglish.html

There is also a thread here, with a link to the blend of a very early version :

http://blenderartists.org/forum/showthread.php?t=159680