Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to make Hinge Joint more rigid

Tags:

unity3d

I'm trying to create a chain in unity3d. A player should be capable of grabing one side of it and pull it to different location. So i created some grids and connect them together. It all works fine, the problem is only when user pulls a bit faster, then I got some spaces bettwen seperate grids. Is there anyway to set max distance on that?

Btw. I'm doing these in 2d so i have 2d Rigidbody and 2d Hinge joint.

Thanks!

like image 305
gabrjan Avatar asked Dec 23 '13 09:12

gabrjan


People also ask

Can a hinge joint rotate?

Hinge joints, also called ginglymi or ginglymus joints, act like the hinges on a cabinet or door to provide back and forth movement. However, unlike their hardware namesakes, hinge joints provide more movement than just back and forth swing. They have a varying spiral profile that allows some rotation.


3 Answers

The solverIterationCount of rigidbodies affects the smoothness of physics when they are moving fast. You should try increasing it or dynamically adjusting it according to the speed of the rigidbodies to increase stabilty http://docs.unity3d.com/Documentation/ScriptReference/Physics-solverIterationCount.html

like image 128
grimpunch Avatar answered Oct 21 '22 20:10

grimpunch


There a number of ways to tackle this issue, all with the up sides and down sides:

increasing accuracy:: this is usually the first place new game designers go, and crank up accuracy to the max. But then end up playing the price later when performance plummets. So be gentle, try to find a good balance, and if it does not cut it make up the rest with other tricks.

The main ways to increase accuracy are, increasing fixed times interval, and increasing ridged body Iteration count

.

Increasing restrictions::This often requires the most time, but cutting corners allows for smoother more predictable physics and can increase performance

small example:: the top link of the chain only needs to simulate rotation on the ridged body

.

Cheating:: find any way to make things easier, fake it

for example:: does the image really need to match the physics? Why not make sure the sprites stick together, but alow the physics to have small gaps

like image 32
Burdock Avatar answered Oct 21 '22 19:10

Burdock


playing with the same concept more or less this week, experimented some with 2D Unity joints, I think the issue you are having is identical to one I had yesterday, the force you are applying 'breaks' joints for some frames, hence that almost 'spring' joint effect, make sure the mass and/or force applied are not too heavy, also maybe increase the chain parts mass, makes the joints more solid too.

like image 28
Khalil Avatar answered Oct 21 '22 18:10

Khalil