Obi Official Forum

Full Version: How to force rope to never stretch?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hello,

I'm using Obi Rope to tether spheres together when they collide.

For example, when 2 spheres of the same type collide, I spawn a rope that is a fixed length. The rope is pinned on each end to a 'PinPoint' object that are children of the spheres. The PinPoints then have fixed joints connecting them to the spheres.

The rope is exactly the length from one sphere's center to the other, so the rope is essentially attaching them to one another.

The intent is to keep the spheres tethered to each other. And it works great, but when I have issues when multiple spheres are tethered to each other (for example, one sphere has three ropes tethering it to three other spheres).


If a sphere is moved, the rope will stretch, and although they are still tethered, they are not touching.

I've tried experimenting with some of the settings, but I cannot figure out what I need to do to keep the ropes from stretching.

I need the ropes to always stay a fixed length, so they're essentially solid rods that never change size.

Any advice?

Thanks for this great tool!
(02-07-2019, 04:18 PM)toxicfrog Wrote: [ -> ]Hello,

I'm using Obi Rope to tether spheres together when they collide.

For example, when 2 spheres of the same type collide, I spawn a rope that is a fixed length. The rope is pinned on each end to a 'PinPoint' object that are children of the spheres. The PinPoints then have fixed joints connecting them to the spheres.

The rope is exactly the length from one sphere's center to the other, so the rope is essentially attaching them to one another.

The intent is to keep the spheres tethered to each other. And it works great, but when I have issues when multiple spheres are tethered to each other (for example, one sphere has three ropes tethering it to three other spheres).


If a sphere is moved, the rope will stretch, and although they are still tethered, they are not touching.

I've tried experimenting with some of the settings, but I cannot figure out what I need to do to keep the ropes from stretching.

I need the ropes to always stay a fixed length, so they're essentially solid rods that never change size.

Any advice?

Thanks for this great tool!

Hi,

Iterative solvers (which account for 99% of all realtime physics solvers) cannot guarantee perfect convergence (ie, perfectly stiff constraints that do not stretch). You can:

- Decrease unity's fixed timestep.
- Increase the amount of solver substeps.
- Increase the amount of distance constraint iterations.

Or any combination of the above.

See:
http://obi.virtualmethodstudio.com/tutor...gence.html
http://obi.virtualmethodstudio.com/tutor...olver.html