x


Unity 2D distance constraint

0 down vote favorite

I've been trying everything to get a 2D distance joint working in unity. I want free rotation to both the body with the joint and the connected body, I also need mass and other constraints adhered to, such as fixing a rigidbodys position. I've tryed for days now, no luck configuring any joint type. Tryed a verlet constraint using: (Just to prove the kind of action I want)

float xDistance = hinge.transform.position.x  - target.transform.position.x;
float yDistance = hinge.transform.position.y  - target.transform.position.y;
float newdistance = Mathf.Sqrt( xDistance * xDistance + yDistance * yDistance );
float con = ( newdistance - maxDistance) / newdistance;
Vector3 moveTarget = new Vector3( xDistance * 0.5f * con , yDistance * 0.5f * con, 0.0f );
hinge.rigidbody.MovePosition( hinge.transform.position - moveTarget );
target.rigidbody.MovePosition( target.transform.position + moveTarget );

But this doesnt take into account mass/force or any fixtures. You can see here I want movement on the X/Y and rotation only on Z.

Help?

more ▼

asked Feb 26 '11 at 09:06 AM

DwayneBull gravatar image

DwayneBull
1 1 1 3

(comments are locked)
10|3000 characters needed characters left

1 answer: sort oldest

I'm pretty sure you can make it so the object moves only on the x/y axis and rotates only on the Z axis if you're using a rigidbody. That's on the Inspector panel. Select the object, and go to where the Rigidobject is. There's an option called "Constraint".

Hope that's of any help.

more ▼

answered Feb 27 '11 at 06:49 AM

Illogical-Ironical gravatar image

Illogical-Ironical
23 2 2 5

(comments are locked)
10|3000 characters needed characters left
Your answer
toggle preview:

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Topics:

x3753
x1882
x1041

asked: Feb 26 '11 at 09:06 AM

Seen: 965 times

Last Updated: Feb 26 '11 at 09:06 AM