Мандатори
* Стандартный набор вычисления сил, скоростей, коллизий и пр.
* Должен работать с Делфи (паскалем на крайняк)
* Должен уметь работать с сочленениями
* Уметь считать нагрузки на объекты и сочленения (например, если колесо провалилось в яму, нужно его отрывать или оно выдержало удар)
* Уметь работать с объектами переменной массы.
Желательно
+ Крайне желательна возможность работы со средой (совпротивление воздуха, сила сопротивления в зависимости от формы объекта)
+ Умение работать с большими расстояниями (чтобы координаты объектов можно было задавать не +/-10000 м, а +/-10 а.е. например)
+ Инверсная кинематика была бы кстати.
+ Модели нежёстких объектов (больше интересуют пружины, тросы)
+ Нахождение объекта по координатам.
+ Не тормозной.
+ Могущий хавать симуляцию из 100-200 объектов без катастрофического проседания производительности
Что посоветуете?
(вроде box2D подходит, но я с такими движками ни разу не работал, поэтому просто по описанию трудно судить)
Уточняющее дополнение:
Основная задача стоит не в просчёте 100 отдельных объектов, а в расчёте поведения конструкции из 100 объектов при приложении разных сил.
На 70% уверен, что можно, но 30% во мне говорят, что только с помощью пересоздания тела. Подсмотреть возможности нет, на работе.
* Должен работать с Делфи (паскалем на крайняк)
Либо враппить C++-ый вариант в dll и писать к нему хидер (гемор, но есть готовые, например у Lampogolovii, ему кто-то помогал его написать), либо взять box2d, Delphi-порт, но он отстает в релизах и местами проглюченный.
Из желательного он точно не схавает большие расстояния... ИК в том виде, в каком я его понимаю, есть во всех движках, поддерживающих джоинты, пружины и тросы возможны, 100-200 объектов может, но где-то в этих значениях и есть его предел (речь идет о 100-200 неспящих объектах, которые двигаются и для которых надо просчитывать физику. Для покоящихся тел бокс2д ничего не просчитывает, пока их не пробудит юзер или другое тело).
Лично я работал с box2d-delphi, есть на гуглкоде.
UPD
Основная задача стоит не в просчёте 100 отдельных объектов, а в расчёте поведения конструкции из 100 объектов при приложении разных сил.
Не видел использования в связке больше 20-30 тел, поэтому трудно сказать