
29.12.2007, 15:31
|
|
Регистрация: Oct 2006
Сообщений: 2,282
|
по идеи повреждения (убыль хэлсов) должны быть пропорциональны модулю разности скоростей точек столкновения тел. Т.е. как я понял ты учитываешь только скорости движения центров масс двух тел, но эти тела-то еще крутятся, следовательно надо к импульсу поступательного движения добавлять еще импульс вращательного.
алгоритм:
1) установить факт столкновения
2) посчитать линейные скорости точек столкновения как
v1 = body1.m_linearVelocity + body1.m_angularVelocity*2PI*r1
v2 = body2.m_linearVelocity + body2.m_angularVelocity*2PI*r2
где r* - еденичные вектора направленные по касательной к окружности радиусом
|m_position - точка_столкновения| и центром в m_position. Считается это все через векторное произведение.
3) помножить скорости на массы, коэффициенты жесткости и т.д.
4) вычесть одно из другого и найти длину результирующего вектора, полученная величина определит силу удара.
Последний раз редактировалось undefined; 29.12.2007 в 15:53.
|