0
여기 box2d에서 작은 게임을 만들고 있습니다. 그 안에는 자동으로 리프트처럼 위아래로 움직이는 몸매가 필요합니다. 나는 터치 할 때이 코드 본문을 사용하여이 코드를 시도했다.리프트와 같은 movebox2d 바디 생성 방법 (몸체가 위 아래로 자동으로 움직일 수 있음)
http://www.box2d.org/manual.html
각형 공동이 좋은 수 있습니다하지만 난 480
enter code here
//Set up a 1m squared box in the physics world
b2BodyDef bodyDef;
bodyDef.type = b2_dynamicBody;
bodyDef.position.Set(p.x/PTM_RATIO, p.y/PTM_RATIO);
bodyDef.userData = sprite;
b2Body *body = world->CreateBody(&bodyDef);
// Define another box shape for our dynamic body.
b2PolygonShape dynamicBox;
dynamicBox.SetAsBox(.5f, .5f);//These are mid points for our 1m box
// Define the dynamic body fixture.
b2FixtureDef fixtureDef;
fixtureDef.shape = &dynamicBox;
fixtureDef.density = 1.0f;
fixtureDef.friction = 0.3f;
body->CreateFixture(&fixtureDef);
- (void)ccTouchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
//Add a new body/atlas sprite at the touched location
for(UITouch *touch in touches) {
CGPoint location = [touch locationInView: [touch view]];
location = [[CCDirector sharedDirector] convertToGL: location];
//[self addNewSpriteWithCoords: location];
b2Vec2 force = b2Vec2(0, 20);
_body->ApplyLinearImpulse(force, _body->GetPosition());
}
}