Как я могу предотвратить прилипание мяча к стенам в Box2D? - PullRequest
10 голосов
/ 21 марта 2011

Я экспериментирую с box2d. Кажется, у меня есть проблема, которую люди описывают как липкие стены

У меня есть мяч и весло

Я использую все основные рекомендуемые весы, которые я смог найти, 10м мир, 1м мяч

Мяч обладает следующими свойствами:

shape: circle (.5f radius)
size: 1.0f
density: 1.0f
restitution: 1.0f
friction: 0.0f

Весло, используемое для перемещения мяча, составляет 1,5 м, оно обладает следующими свойствами: форма:

circle (.75f radius)
size: 1.5f
density: 10.0f
restitution: 0.1f
friction: 0.0f

Как видите, для всех объектов трение равно 0.

Мяч постоянно застревает, катится по стене или полностью заклинивает в углах 90 градусов

Я думал, что смогу обнаружить столкновение со стеной и вызвать applyLinearImpulse, чтобы отодвинуть шар от стены.

1 Ответ

13 голосов
/ 21 марта 2011

Необходимо уменьшить порог минимальной скорости для упругих столкновений.

Сделайте это, уменьшив b2Settings :: b2_velocityThreshold ближе к 0.

...