0
$\begingroup$

Set up: In the Front Leg Demo file, I'm using rigid body Passive element as the horse body (not moving), Active rigid bodies for the three leg parts and Hinge constraints for the joints that connect the links. There are two additional links (rod and spring) that a Active rigid bodies that also have Hinge constraints and these parts help form parallel mechanisms to control the movement of the lower leg links.

Problem: The Hinge constraints do not keep the Active rigid bodies aligned along the initial rotation axes.

I have tried:

  1. Adding "Lock To" object constraint to the Hinge (empty) and an empty located on the part, where both empties have the same initial loc./rot. This is not shown in the demo file.
  2. Adjusting the objects weight and it's origin has a large effect on how the Hinge rot. axis stays aligned, but this throws off the physics simulation.
  3. Modifying/disabling/removing collisions and/or collections.

Other notes: Running rigid body physics in Blender is super finicky... To update any changes, I have to jump through a few different hoops and cross my fingers that it works.HorseLeg_RigidBodyHinges.jpg

Here is a shared folder with the working file: https://drive.google.com/drive/folders/1YuomtLYRkzkzBzJEiYg6tRfQ1du6fmF9?usp=sharing

$\endgroup$

2 Answers 2

0
$\begingroup$

you enabled collision here:

enter image description here

which i think cannot work because your rigid bodies have convex hull as collision shape and so the rigid body collisions won't work because the objects are already inside each other.

I don't know how much experience you have with blender physics, but maybe first try a bit with easy geometry to get a feeling how it works.

This gif shows the difference between convex hull and mesh:

enter image description here

$\endgroup$
3
0
$\begingroup$

I have solved the issue by using a very simple Rigid Body "skeleton" structure and parenting it to the actual part. I followed a path similar to: youtube.com/watch?v=M5zBqQELdVU&t=4s and download.blender.org/demo/compound_collision_chain.blend

For example, use a simple wire mesh Rigid Body to represent the real mechanism (the leg link and the hinge joints). Then parent that part to the real geometry (the actual high poly count leg part). And example is below:

The selected box is the "high poly count" leg link. It is a Rigid Body and its Collision Shape is "Compound Parent".enter image description here

The simple wire mesh Rigid Body part shown below is the actual Rigid Body part that is used for the physics calculations and is much easier on the system to handle. enter image description here

Lastly, I found it very helpful to increase the number of Substeps Per Frame calculations above it's default of 10. Just bumping it up to 15 was sufficient. This step was critical to keep the joint axes aligned when the assembly comes into contact with an object or when it drops to the floor:

enter image description here

Here is the blend file for those interested and thank you for your help! https://drive.google.com/file/d/1BtnHjLc7ivmVK-6ciwByJdoVtmEXFtZe/view?usp=sharing

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .