… 생략 : Box2dEx04의 코드와 같음 …
void HelloWorld::setBox2dWorld()
{
// 마우스 조인트 바디를 생성해서 월드에 추가한다.
bDrag = false;
gbody = this->addNewSprite(Vec2(0, 0), Size(0, 0), b2_staticBody, nullptr, 0);
// *****************************************************************************
b2PulleyJointDef pulleyJointDef;
b2Body* body1 = this->addNewSprite(Vec2(200, 150), Size(40, 40),
b2_dynamicBody, "test", 0);
b2Body* body2 = this->addNewSprite(Vec2(300, 150), Size(40, 40),
b2_dynamicBody, "test", 0);
//b2Body* bodyA = this->addNewSprite(Vec2(200,300), Size(40, 40),
// b2_staticBody, nullptr, 0);
//b2Body* bodyB = this->addNewSprite(Vec2(300,300), Size(40, 40),
// b2_staticBody, nullptr, 0);
pulleyJointDef.Initialize(body1,
body2,
b2Vec2(200 / PTM_RATIO, 300 / PTM_RATIO),
b2Vec2(300 / PTM_RATIO, 300 / PTM_RATIO),
body1->GetPosition(),
body2->GetPosition(),
1);
// 약 160 .. 200이라 중력의 영향으로 아래로 떨어졌다.
pulleyJointDef.lengthA = 160 / PTM_RATIO;
pulleyJointDef.lengthB = 160 / PTM_RATIO;
pulleyJointDef.collideConnected = true;
_world->CreateJoint(&pulleyJointDef);
}
… 생략 : Box2dEx04의 코드와 같음 …