2011-02-25 5 views
1

저는 Unity에서 2D 거리 조인트를 만들기 위해 모든 것을 시도해 왔습니다. 나는 관절과 연결된 신체로 자유로운 회전을 원한다. 나는 또한 견고한 신체의 위치를 ​​고정하는 것과 같은 질량과 다른 구속을 필요로한다. 나는 지금 일 동안 tryed, 아무 연결 유형을 구성하는 운.2D 거리 제한

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); 

그러나 이것은 질량/힘 또는 모든 조명기를 고려하지 않았습니다. 여기서 나는 X/Y에서의 움직임과 Z에서만의 회전을 원합니다.

Help?

답변

1

나는 이것이 정말로 답이 아니라는 것을 알고 있지만, 덧글 추가 버튼은 없다. Unity와 잘 어울리지 만, Unity2D를 한번도 사용한 적이 없으며 이전에 "MovePosition"을 본 적이 없다고 말할 수는 없습니다.

http://answers.unity3d.com 에 대한 답변을 찾는 것이 더 나을 것입니다. [다시 말씀 드리지만, 답변이되지 못해 사과드립니다. 나는 오히려 이것에 대해 의견을 말하기를 원하지만, tkat은 옵션이 아니다.]

+0

대답으로 표시해 주셔서 감사합니다 :) 미안 해요, 더 도움이되지 못했습니다. ( –