1

enter image description here I desperately need a rigid body to be dropped onto a conveyor belt, and then when the belt runs out (pulley) the same rigid body falls off onto another conveyor. The 'conveyor is just a loop-cut plane following a curve object via curve mod. Blender file available below.

https://drive.google.com/file/d/1_JpJ0UvssnZt7Q9B9iW1CU4sMtNgV7LX/view?usp=sharing

JB Riley
  • 791
  • 3
  • 9
  • It seems to work for me. Unless you mean something else, in which case please [edit] your post to elaborate. – L0Lock Aug 08 '23 at 01:52
  • @L0Lock i looked at your video and it doesn't look correct. the block is not on the conveyor and it doesn't fall off when it reaches the right edge. in my case it works perfectly on blender 3.6. So yeah I don't see any problems. I will vote to close this question if no details are provided of the exact problem. – Harry McKenzie Aug 08 '23 at 03:22
  • https://blender.stackexchange.com/questions/24046/how-to-make-a-rigid-body-fall-off-a-conveyor-belt https://blender.stackexchange.com/questions/240910/how-to-simulate-movement-of-rollers https://blender.stackexchange.com/questions/147066/2-8-duplicates-along-curve-but-with-animation/ https://blender.stackexchange.com/questions/241575/how-to-make-object-on-the-conveyor-snap-to-indexing-rotary – Duarte Farrajota Ramos Aug 08 '23 at 08:52
  • 1
    @HarryMcKenzie Although I agree that I'm not sure why L0Lock thinks the behaviour shown in the video is correct, I experience both: after opening the file, it works correct like you show. When I try to change a few things, at some point (e.g. setting the cube to Collision Shape > Mesh) it stops working and looks like L0Lock's video. And no matter what settings I change back, I'll never get the correct version again until I re-open the file. But I often have the problem that deleting the rigid body cache does not really get rid of the cache in many cases. – Gordon Brinkmann Aug 08 '23 at 09:11
  • @DuarteFarrajotaRamos None of the linked answers provide a solution for this problem. The closest approach might be the first link, but the solution there (enabling "Deforming" on the conveyor belt) is already applied on this one. – Gordon Brinkmann Aug 08 '23 at 09:23
  • 1
    i experienced the same behaviour as Gordon in newer versions, but in the newest 4.0 alpha version it seems to be much more stable...i changed a few things and it is still working – Chris Aug 08 '23 at 09:23
  • and i agree totally with Gordon that the provided links won't help in that newer versions at all...so i vote to reopen that question – Chris Aug 08 '23 at 09:25
  • @Chris I downloaded the latest 4.0.0 Alpha right now and opened the file > it works. Changed the cube from Convex Hull to Box > it works. Changed Friction from 0.5 to 0.9 > broken. Changing back to 0.5 and Convex Hull > still broken. Re-open file > works. Changing Friction to 0.9 > works. Changing back to 0.5 > broken. To me this is simply a bug that something does not work at a certain point and even setting everything back to a working solution keeps the broken situation... and this has been there in many previous versions. – Gordon Brinkmann Aug 08 '23 at 09:33
  • 1
    I've voted to close the question again, but not because it being a duplicate but as I said in my comment before, this seems to be a bug. I guess it is related to this one: https://projects.blender.org/blender/blender/issues/99867 – Gordon Brinkmann Aug 08 '23 at 10:32
  • @DuarteFarrajotaRamos There's kind of a fine line between bug and unsupported feature. Support for mesh deformation inside of rigid body is kind of iffy-- it's just some extra stuff that might work, that's been glued ont a system that isn't designed to deal with deformation. And that's the problem in this case, not the linked post. This is a solvable problem, by using a conveyer belt made of objects rather than mesh, the same class of solution as for a thousand physics problems: separate render from physics. I can answer if this gets reopened. – Nathan Aug 08 '23 at 13:52
  • Wow what a roller coaster, sorry about all the opening and closing JBRiley. Answer away @Nathan – Duarte Farrajota Ramos Aug 08 '23 at 14:05
  • @HarryMcKenzie funny, it worked in the viewport but not in render x) Should have checked it before posting. – L0Lock Aug 08 '23 at 16:05

1 Answers1

2

Blender's physics aren't real world physics, and there tends to be things that they're good at and things that they're bad at. In the case of rigid body physics, they're good at low energy collisions between primitive objects, and they're bad at dealing with actual meshes. This is a solvable problem: we just have to make our physical systems in a way that they work well with rigid body physics. Rather than trying to rely on one system to both render well and physics well, we'll abstract the physics from the render.

We'll start by disabling rigid body physics on the conveyor belt mesh. Then we'll make some simple, stretched-out cubes (but with scale applied) to make our conveyor belt out of objects. Here, I'm using a clamp to constraint to acquire the curve as a transformation (rather than a deformation):

enter image description here

And we can see that I have physics set up for this cube as well, rigid body, animated. We'll duplicate those a bunch and parent them to an empty:

enter image description here

Now when we move that empty, its children will inherit its location, then clamp to the curve-- so, rotating about the curve. We can just copy your X location keyframes from your rendering conveyor belt onto this empty.

enter image description here

We can disable rendering on these cubes, probably put them on their own collection somewhere out of the way, maybe set them to a wireframe display. They exist only to do our physics.

Nathan
  • 24,535
  • 1
  • 22
  • 68
  • thanks. So sad that the blender physics engine can accomplish this with the layout show in the initial question above, but with intermittent results - sometimes it works as expected, but if you save the document or tweak something small, it's done, and will not work again. – JB Riley Aug 18 '23 at 01:03