0

Cocos2d 2.0 と box2d を使用してサンプル ゲームをテスト/作成しようとしています。画面にたくさんのスプライトがあり、スプライトを押すと、ボディがそのスプライトに自動的にアタッチされるようにします。TouchesEnd メソッドを使用しようとしましたが、うまくいかないようです。

誰かが私を正しい方向に押し進めることができますか?

4

1 に答える 1

0

この方法を試してください...

-(void)createB2Body
{
    b2PolygonShape shape;

    float xDist = (sprite.contentSize.width*0.5f)/PTM_RATIO ;
    float yDist = (sprite.contentSize.height*0.5f)/PTM_RATIO ;

    shape.SetAsBox(xDist, yDist);

    b2BodyDef bd;
    bd.type = b2_dynamicBody;
    bd.userData = sprite;
    bd.linearDamping = 0.5f;
    bd.angularDamping = 0.5f;

    bd.position.Set(self.position.x/PTM_RATIO, self.position.y/PTM_RATIO);

    b2FixtureDef fixDef;
    fixDef.shape = &shape;
    fixDef.density = 1.0f;
    fixDef.friction = 0.1f;
    fixDef.restitution = 1.0f;
    fixDef.isSensor = true;

    self.body = self.world->CreateBody(&bd);

    self.body->CreateFixture(&fixDef);

}

タッチだけ?次に、ccTouchesBeganを使用します。

于 2012-12-28T07:22:00.680 に答える