06-03-2025, 09:55 AM
(This post was last modified: 06-03-2025, 10:01 AM by josemendez.)
(06-03-2025, 08:30 AM)3dship Wrote: Hello
What I want to do is really simple but I couldn't solve it because I'm a beginner. To tie the ship to the land with a rope. I create an obi solver and tie the ship. The ship is big and has a high volume, about 700,000 mass. When I move the ship, the rope constantly stretches and doesn't hold the ship. I couldn't figure out what other settings I should make and what I'm missing.
Hi!
One of the basic rules in realtime physics is that mass ratios must not exceed 1:10. This means the heaviest object in your scene shouldn't be more than 10 times heavier that the lightest one. This rule affects all physics engines, Unity's internal engine and Obi being not exceptions (try placing a 700.000 kg box on top of a 1 kg box in Unity and see what happens).
So if your boat is 700.000 kg and your rope has the default weight (100 grams), that's a 1:7000 ratio. As a result, the rope will stretch indefinitely because it can't pull the comparatively enormous weight of the boat. In real life, you'd have anchored the boat using a thin cotton thread and it would have simply snapped in half: boats are usually anchored using much heavier, sturdier ropes/chains.
In your case, either make the rope heavier by setting the mass of its control points in the path editor or make the boat lighter.
Note the reason low mass ratios are preferred is not because physics engines are unable to deal with them, but because they're much more expensive to solve. You can increase the amount of solver substeps to allow the system to spend more resources on finding a better solution for the simulation. The manual contains a very in-depth explanation of how the engine works internally and how substeps/iterations affect the results:
https://obi.virtualmethodstudio.com/manu...gence.html
let me know if you need further help,
kind regards