1
$\begingroup$

I'm very new to Blender, so maybe there is a simple solution. I just learned the Rigid Body animation. My aim is to let a somewhat simple object (a carrot by wojtekgr from here) fall onto a plane. However, it always fells through the plane. Directly setting the carrot to a rigid body (with convex hull) has led to other errors, therefore I remodeled the carrot with a cone and a cylinder. I read that the compound parent setting can help

I have used the following settings:

  • plane → passive, convex hull
  • carrot → active, compound parent
    • cone → active, convex hull
    • cylinder → active, convex hull

This led to the following obviously bogus animation:
demo GIF

So the carrot (and the underlying cone) somehow "sinks" into the plane. Is there a way to fix this?

$\endgroup$
3
  • $\begingroup$ pro tip 1: you can't embed videos here but you can ember GIFs. pro tip 2: videos on Imgur are also available as GIFs, just manually change the extension in the link. $\endgroup$
    – Lauloque
    Commented Oct 12, 2023 at 14:50
  • $\begingroup$ Thanks for correcting my typos. However, the Imgur GIF seems not to move (vs the mp4) and you edited it to be a picture, didn't you? I even tried to convert the mp4 to a GIF with ffmpeg but it gave me a 221 MB file (without further encoding settings applied). $\endgroup$
    – gerion
    Commented Oct 13, 2023 at 21:26
  • $\begingroup$ hm nope my bad i mistakenly used BSE's picture insertion tool instead of manually inserting the gif link, and it automatically converts into jpegs. But the gif link doesn't seem to work anyway, so i made a new one with fewer fps $\endgroup$
    – Lauloque
    Commented Oct 15, 2023 at 15:13

3 Answers 3

2
$\begingroup$

Units and measurements

You simulate physics, so scale and dimensions matter. Your carrot is scaled down to 0.1, yet it measures over 8 meters long, and its rigid body mass is 1 kg.

First, set your carrot dimension to a more reasonable dimension, like 15-20cm long. Scaling it to 0.002 gives you a 16cm carrot.
Then, Apply the scale using ⎈ CtrlA > Apply Scale so that the current dimension of the carrot is the normal "1" scale.
Then in the rigid body settings, set the carrot's mass to something more like a carrot, like 200g.

Don't forget to do this on your carrot model, and also on your other collision objects.

Then move your carrot closer to the ground because it is otherwise three stories high, and the simulation should work just fine.

Collision objects

Just a personal preference but I am not a big fan of the compound parent system in Blender, I find it way more reliable to either use the other options or use one parent object modeled specifically for the physics simulation.

The only reasons you would want to use a different object for controlling the physics is for performance and customization: using a different mesh allows you to go lower in mesh density and avoid convex shapes, which is easier to calculate, and also abstract some aspects of the simulation like artificially inflating/deflating the collision mesh in some areas to make other objects meet at the right point.

Here I made one using a duplicate of your carrot, removed everything but one edge loop, and extruded a few times. Set it as parent, removed the physics settings from the carrot and put it on the collision object instead:

enter image description here

$\endgroup$
2
  • 1
    $\begingroup$ Thank you very much! It worked fine and explains my error. $\endgroup$
    – gerion
    Commented Oct 13, 2023 at 21:22
  • $\begingroup$ BTW, I was asking myself: Even if a baloon of 8m height and a mass of 1kg falls onto a plane (like my setup was before), it shouln't sink into it. Is this an error/property of the solver? So it works only for "real world setups" since it (only) approximates the physics? $\endgroup$
    – gerion
    Commented Oct 16, 2023 at 16:31
1
$\begingroup$

i don't know what you did, but "normally" if you wanna do a rigid body simulation with compound parent, you won't use convex hull but the given "easy" geometric shapes which Blender provides: cone, cube, ...

enter image description here

If you choose one of these predefined shapes (except parent compound and mesh) you will "see" the collision object.

Make sure the collision object matches with the mesh. You can do this either in edit mode and change the mesh and/or by using the delta transform panel.

So i did that and result looks like this:

enter image description here

$\endgroup$
0
$\begingroup$

Remove the cone and cylinder objects, select the carrot, apply the scale & rotation, in the Physics panel choose Collisions > Shape > Mesh and it should work.

$\endgroup$

You must log in to answer this question.

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