Pushing a "train" of blocks up a ramp


Here’s a simple model of a thrust fault. I intend for the blocks on the left to be pushed in the +X direction (left to right). To simulate what happens in nature, the blocks should collide with the immovable “footwall” ramp and be forced upward. The blocks should move like a train backing up a hill, with the motive force coming from the leftmost block.

I made a crude mock-up of what it should look like after the blocks are pushed up the ramp–please see attached screenshot. In nature, there’s a lot of deformation that takes place at the two big gaps you see in the screenshot. I’ll worry about that after I figure out how to push one object with another.

It’s easy enough to have a softbody bounce off something that isn’t a softbody, but how to go about pushing a “train” of blocks like this? Please see attached blend file.

Thank you,

Clinton Crowley
Fort Worth, Texas


thrust3.blend (494 KB)

You could use the game engine, and record ipos.

Nothing in blender is ever going to work completely like it does in real life IMO, so just “fake it”. What are you trying to achieve? A simulation, or a visualization? Just keyframe/shapekey it to achieve the desired result. Layer it, have the big pieces, like your blocks, bust upward (keyframed) and deform them with armatures or shapekeys. This will form the base of the animation, then add layers like moving textures across the ground and dust, little pieces disentagrating and falling in the chasm, that sort of thing. Also, frame your shot first so you know what is going to be seen/unseen and realize that you can have a number of shots to show one action, the whole scene doesn’t have to play out like real life, but each characteristic you want to show can be seperate shots. (ground moving, shaking tree, ground thrusting up, giant crack forming, far away shot to show the whole thing) I may be on the wrong track here if this is a science project.:slight_smile: Keep blending!

Thank you for the suggestions! Here’s my first adventure into the game engine (attachment: thrust4.blend, uses mouse buttons & wheel). It would be a really amazing game in…1982…but it’s fun to push the hanging-wall blocks up the footwall ramp. I saved it as an executable file and impressed Ma and Pa!

Thank you all again for the suggestions, they’re very helpful. This community has been nothing but civil and constructive for me, and I appreciate it very much.



thrust4.blend (163 KB)

Hello, and thanks again for your previous replies.The blend file has gotten too big to upload here, so I’ve put it here:

Thrust faults, like the one that caused the 1993 Northridge earthquake, usually start way down underground, under a thick layer of rock. So I’m simulating this passive layer of rock with another layer of long rectangular segments resting on top of the mobile layer (the “train backing up a ramp” from my previous post).

I put an armature through one side of both of these multi-part layers. The goal is to make the lower and upper layers hold together like one of those toy snakes made of wood or plastic that cats find so exciting. Instead of breaking into a chaotic pile of lumber, I want to create an undulating effect. But…I don’t yet know what I’m doing. Please see attached images for how the simulated thrust fault begins well, but turns chaotic as the segments separate. Also attached is a picture of the snake toy whose motion I want to copy.

So–is there a way to increase the tension in the armature? That is, to have the armagure pull the segments more tightly together? But not so tightly that it can’t bend upward as the segments in the lower layer begin to be shoved up the ramp.

Please let me know if I’m not making sense, or if you have trouble getting the file.



Oh, right, attach armature to mesh…

I need to go to bed and return when I get my brain back