2012-02-28 11 views
0

私はこのように、摩擦0.fと反発1.0でボールを作成しました:box2d:ボールが緩やかな傾斜で跳ね返ることができないのはなぜですか?

// Create shape definition and add to body 
    b2FixtureDef ballShapeDef; 
    ballShapeDef.shape = &circle; 
    ballShapeDef.density = 1.f; 
    ballShapeDef.friction = 0.f; 
    ballShapeDef.restitution = 1.0f; 
    //ballBodyDef.bullet = YES; 
    _ballFixture = ballBody->CreateFixture(&ballShapeDef); 
    // Give shape initial impulse... 
    b2Vec2 force = b2Vec2(0, 1.2f); 
    ballBody->ApplyLinearImpulse(force, ballBodyDef.position); 

を衝突が起こったときにボールが壁から外れうまくバウンド。しかし、緩やかな斜面に衝突したとき、それはこのように、氷の上のようにスライドさせます:

Image of Demo

そして傾斜の物理的特性は以下のとおりです。 密度:1 摩擦:0 反発:1

方法ボールを斜面から跳ね返すことはできますか?

答えて

1

両面に摩擦がない場合、ボールがある角度でぶつかるとボールが「跳ね返る」理由はありません。両面に少し摩擦を与えてみてください。

0

ボールまたはスロープに戻してみてください。

関連する問題