2011-12-14 2 views
1

나는이 게임에서 체인을 가지고 게임을 개발 중입니다. 체인 한 쪽은 정적이고 다른 쪽은 동적입니다. 체인이 ccTouchMove.as 체인 이동으로 움직이는 경우 동적 파트가 확장되어 곡선처럼 보입니다. 체인 길이가 고정입니다. 어떻게 고정 길이와 곡선을 설정할 수 있습니까?Box2d에서 조인트를 만드는 방법

어떤 관절을 사용해야합니까? 나는 RopeJoint를 시도하고 있지만 오류가 발생합니다. b2RopeJointDef jd;

일부 샘플 코드를 보낼 수 있습니다.

+0

b2RopeJointDef jd; \t jd.bodyA = anchorBody; // 바디를 정의하십시오. \t jd.bodyB = body; \tjd.localAnchorA = b2Vec2 (0,0); // 앵커 정의 \t jd.localAnchorB = b2Vec2 (0,0); // \t jd.maxLength = (body-> GetPosition() - anchorBody-> GetPosition()). Length(); // 몸체 간의 최대 거리를 정의하십시오. \t 세계 -> CreateJoint (&jd); // 조인트 생성 – triveni

답변

1
You can use rope joint and use code like this.. 

b2RopeJointDef rp; 
rp.bodyA=dragonFlyAnchor; //define bodies 
rp.bodyB=foodItemBody; 
rp.localAnchorA = b2Vec2(0,0); //define anchors 
rp.localAnchorB = b2Vec2(0,0); 
rp.maxLength=((foodItemBody->GetPosition()) - dragonFlyAnchor->GetPosition()).Length(); //define max length of joint = current distance between bodies 
world->CreateJoint(&rp); //create joint 
+0

+1 b2DistanceJoint가 저를 위해 작업을 수행했습니다. 그러나 어쨌든 –

관련 문제