Я делаю игру, похожую на бильярд. Эта игра требует правильных (или очень точных) отражательных отскоков. Я пробовал Box2D и Bullet Physics , но у них обоих есть эта проблема.
Если на этом изображении есть стена, красная линия предполагает ход реального мяча в бильярдной игре. Но двигатели часто показывают курс зеленой линии. Особенно,
- Это происходит после того, как медленно движущийся шар падает на стену.
- Иногда быстро движущийся шар внезапно замедляется.
Я нахожу физический движок, который может максимально точно смоделировать игру в пул без этих проблем. Могу ли я получить некоторые рекомендации? Сейчас я копаю Newton Game Dynamics , но я не уверен, что движок покажет, что я хочу. Я рассматриваю движок PhysX как следующую пробу, и должен сделать свой собственный, если ничего не работает. Но очевидно, что это займет очень много времени, поэтому я бы не хотел этого делать. Я буду очень признателен, если вы сэкономите мое время. И, конечно, приветствуется решение с Box2D / Bullet Physics.
Я работаю с C / C ++ / Objective + C на iOS.
Я прилагаю свою конфигурацию с Box2D.
стены
- статическая форма коробки
- линейное / угловое демпфирование = 0,1
- реституция = 1,0
- трение = 100
- плотность = 10
- пуля = ложь
- фиксированное вращение = ложь
- инерционная шкала = 1,0
Яйца
- динамическая форма сферы
- линейное / угловое демпфирование = 0,1
- реституция = 1,0
- трение = 100
- плотность = 20
- пуля = правда
- фиксированное вращение = ложь
- инерционная шкала = 1,0