box2d: Почему мяч не может отскочить на постепенном наклоне? - PullRequest
0 голосов
/ 28 февраля 2012

Я создал шар с коэффициентом трения 0.f и реституцией 1.0, например:

// 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

Как мне сделать, чтобы мяч отскочил от склона?

Ответы [ 2 ]

1 голос
/ 28 февраля 2012

Если обе поверхности имеют нулевое трение, нет причины для "отскока" шара, когда он ударяет под углом. Попробуйте придать обеим поверхностям немного трения.

0 голосов
/ 18 июля 2013

Попробуйте вернуть реституцию мячу или склону

...