Alexander K, спасибо! Теперь разобрался :) Я просто не программист, сейчас работаю над мат. моделью гоночного автомобиля, поэтому некоторые моменты, написанные в виде программного кода, у меня иногда вызывают затруднения.
В статье упущен один важный момент: как влияет сила трения шины на скорость вращения самого колеса?
mihanocho
> Я щас занимаюсь переключением передач. Вот когда мы переключили на следующею
> передачу обороты должны спасть практически до холостых?
Обороты будут падать до холостых (точнее выше на 100-200об/мин, инжектор подает больше топлива при движении на скорости), но не мгновенно из-за инерции двигателя. После включения передачи и срабатывания сцепления обороты будут зависеть от текущего передаточного числа и скорости. Переключение занимает от нескольких мс у роботов с двойным сцеплением и до нескольких секунд у новичков на мешалке :)
FDsagizi
> И вот чего не пойму, зачем они гасят fwdFactor ?
та они всё там гасят в булете
Физика по видео очень классная!Но такой вопрос, она будет работать в unity3d android?
Diman68PRO
А что может помешать? О.о
Alexander K
Спвсибо за статью, регулярно её перечитываю, заодно узнал много нового про автомобили ))
Есть гораздо лучше литература, классика:
Чудаков Е.А. Теория автомобиля
Alexander K
Добрый день, извиняюсь что мертвую тему подымвю, но не должно в этой формуле вместо знака делмть умножение стоять?
float toWheelTorq = torq * Efficiency / (TopGear * Gear[CurrentGear]);
, так как у вас крутящий момент на колесах для меньших передач - меньше.
Quazeeee
> Добрый день, извиняюсь что мертвую тему подымвю, но не должно в этой формуле
> вместо знака делмть умножение стоять?
> float toWheelTorq = torq * Efficiency / (TopGear * Gear[CurrentGear]);
> , так как у вас крутящий момент на колесах для меньших передач - меньше.
++
Пересматривал статью сегодня и тоже заметил эту ошибку.
Обороты колеса получаем делением оборотов движка на передаточное число, а крутящий момент - умножением.
Иными словами - трансмиссия дает выигрыш в силе, но за счет проигрыша в скорости вращения.
Во сколько раз увеличили крутящий момент колес, во столько же раз уменьшили скорость их вращения.
и еще вот здесь есть сомнение
> RPM += torq / Inertia;
Если не ошибаюсь, деля крутящий момент на инерцию, мы получаем угловое ускорение, которое выражается в радиан/секунда в квадрате. А RPM(revolution per minute) - это обороты в минуту. Следовательно, сначала мы должны найти угловую скорость двигателя, затем уже перевести это значение в RPM.
EngineAngularAcceleration=torq/Inertia;// угловое ускорение двигателя rad/s^2 EngineAngularVelocity+=EngineAngularAcceleration*dt; //угловая скорость вращения двигателя rad/s EngineRPM=EngineAngularVelocity*60/(PI*2);//скорость вращения двигателя обороты в минуту
Поправьте, если заблуждаюсь=).
Недавно заглядывал в свои старые проекты - удивительно, но exe'шник этого гоночного симулятора, скомпилированный почти 15 лет назад, без проблем запустился на моём современном компе на win 10. Пришлось только ограничить fps с помощью RTSS, т.к. на 2500+ fps какая-то часть расчётов начинала работать неправильно и физика вела себя странно.
Записал короткое видео с деформацей шин, в чуть лучшем качестве, чем оригинальное видео в статье:
https://imgur.com/a/3UKBtF5
Не обращайте внимания на задний привод у восьмёрки - это очевидно какой-то дебажный билд, в котором ещё много других странностей - кто знает что там было 15 лет назад :D
Статья сейчас вызывает у меня сильнейший facepalm. Чего стоит одно только видео, записанное на камеру мобильного телефона середины 2000-х годов, лол. Тем не менее забавно, что бинарник до сих пор работает и даже выглядит неплохо.
Alexander K
гдеж вы были 4 года назад, когда я курил эту тему. А статье вообще 10 лет оказывается, почему в поиске её не было.. блиин.
Надо было назвать: физика автомобиля или дать двойной заголовок (сохранив старый).
Alexander K
> Пришлось только ограничить fps с помощью RTSS, т.к. на 2500+ fps какая-то часть
> расчётов начинала работать неправильно и физика вела себя странно.
Да, это в неправильно.
Правильно - когда физические фреймы не "ограничивают", а когда они в принципе работают независимо от дисплейных, на некоторой фиксированной частоте.
Тема в архиве.