Using Rope to lift an object
#1
Hi there,
I am a little muddled with rigid body dynamics and rope objects.
I have followed some tutorials and made rope objects in tyflow that can fall onto an interact with objects.  What I am trying to do is replicate a little systems where there are two ropes looped over each end of an object and then lift it up.  
The idea is (for my kids school assignment), is to show a cut down tree.. so basically a cylinder and there is a crane over the top which is just a long bar about 2/3 the length of the cylinder.  there is rope at the end of each the bar that loops under the tree.. the bar rises, the rope lifts the tree and it just gets moved to another pile..  a simple animation about forestry and regeneration etc but hoping to help sell it with a cool little animation that has physics.

I know in massfx where you can bind points of an object and then obviously set the 'tree' as a rigid body object then then all interact with each other, I want to try this with tyflow, just having trouble sorting out what bits I need where.

Appreciate any pointers with this one.

S.
  Reply
#2
I am waiting for some render to finish, so I created a file on how I would approach it.
Hopefully I understand the way tree needs to  be lifted and carried on other spot.

Still needs to be tweaked, in order to get more realistic motion of rope and tree, but I wanted to stay very close to default settings.
You can play with PhysX bind settings (twist and swing) in order to adjust rope behaviour. Or changing the binding numbers will give you different result, on the rope.
You can also change the mass parameter of tree, so it behave differently (tip: it will not affect gravity on the tree, only influence on the ropes) 
And for global stuff (that will affect both tree and ropes), under the Tyflow icon, you can change substeps to larger (1/4, or something ) or within PhysX settings change gravity, or other 3 options.
There's no magic formula for these settings (as they vary from scene to scene) , just trials and errors, until it looks great in motion Smile

Hope this helps, and feel free to ask anything unclear in my project.


Attached Files
.zip   Tree_ropes.zip (Size: 46.93 KB / Downloads: 249)
  Reply
#3
Thanks mate, just going to have a look at this now.  I haven't seen the file yet but I appreciate the fact you have put this in a reply.

Will report back.
  Reply
#4
ok I have replicated this and have it hanging together... sort of.

I have added 4 more logs.  Now when the top is animated up, the logs dont move and the rope sort of just stretches?!  

What should I change to give the rope more "strength"?

EDIT:  I have the mesh type set to mesh as the logs are a couple of objects attached as there is a mock up of a frame and such.  When the type is convex it works fine, when it is mesh the object just doesn't move and the spline / rope just stretches.
  Reply
#5
(01-25-2021, 11:51 PM)stevenls Wrote: What should I change to give the rope more "strength"?

Try increasing Max binds parameters in PhysX Bind operator, to some larger number. 
Also, you can try changing mass parameter in the PhysX Shape operator (for the ropes), to something larger then 1, so the ropes have more influence on the logs. 
And last but not least, grab your Tyflow Icon, and increase Time Step to something like 1/4, or 1/6. This will make it slower, but will globally influence all PhysX behavior to be more stable (as it will calculate motion in between frames). 
And also, there is separate substeps option under the PhysX parameters, also in Tyflow icon, that will globally change the physX behaviour. 

Btw, I've tried now cloning log to 4 logs in my file, and it worked without problem. No stretching on the ropes, and it lifted all 4 logs. 
Maybe when you replicated my scene, you missed some of the settings I mentioned above (probably max binds) 

Keep in mind that PhysX Shape operator can't work with concave shapes, only convex. 
There is a workaround, by braking concave shape to smaller convexe, then binding them back together. 
But it's not that easy to explain.
  Reply
#6
Thanks for the reply, yeh I realised it was the fact I set the hull type to mesh. So then what I did is made a dummy object that doesn't have the elaborate shapes but then I couldn't find a way to link it to the actual logs mesh.
I thought the might be a way to bind the tyflow object to an actual mesh object but for the life of me I can't see how to do this.
You are correct also, having a number of individual cylinders as logs all worked fine as expected. I even had one off towards the end and as it lifted it toppled off, really cool and it works well, but not I have come unstuck with a mesh object.

Is there a way to bind the tyflow dynamic object that is created with a normal mesh object.
  Reply
#7
Object bind operator is used to bind particles to meshes.
As you can see in my file, I bind top of the ropes with object bind so they follow the box object, and that way pulling the other strings that are not binded.

But... what's the point of binding dynamic object?
If you bind it, it will loose dynamic, because you're forcing it to follow object.
That's the part I don't understand. Smile
  Reply


Forum Jump: