БЛОГ

Изобретаем колесо


Здравствуйте, уважаемые коллеги!
Меня зовут Николай, и я руковожу разработкой программной части в проекте Go>Race. Самая интересная составляющая в любом автомобильном симуляторе — это так называемая физическая модель. Раньше симуляторы были вот такими.
Самая интересная составляющая в любом автомобильном симуляторе — это так называемая физическая модель. Раньше симуляторы были вот такими.

Автомобили в них представлялись в виде набора картинок, которые менялись в зависимости от действий игрока. С ростом вычислительных возможностей компьютеров и визуальная составляющая улучшалась, и симуляторы начали становиться всё более реалистичными и правдоподобными в своём поведении.

Современные автомобильные симуляторы имеют в своей основе либо готовые физические движки, которые можно купить, обычно эти движки закрытые, либо используют свои собственные наработки, обычно восходящие корнями к разработкам двадцатилетней, а то и больше давности.

Задача Go>Race. — разработать свою собственную платформу, которую мы могли бы развивать и расширять ещё в течение долгого времени.

Поэтому создать физический движок нам нужно самим почти с нуля. Условно-физическую модель Go>Race. можно представить в виде пяти основных компонентов. Первый компонент – это базовая физика, которая реализуется движком Unigine. Она представляет из себя физику твердого тела, силы инерции и взаимодействия объектов внутри игровой сцены. Следующий важный элемент – это модель трансмиссии, которая формирует момент, создаваемый двигателем, преобразует его и передает в колесо. Соответственно, в свою очередь, колесо создает тормозящий момент, который точно также передается обратно по трансмиссии в двигатель и тормозит движение двигателя.

Таким образом возникает то, что называется циркуляция мощности внутри трансмиссии автомобиля. Второй важный элемент – это модель внешних сил, действующих на автомобиль. Обычно это силы тяжести, аэродинамические силы, силы лобового сопротивления, подъемная и прижимная силы.

Для моделирования аэродинамических сил обычно используется так называемая табличная аэродинамика. То есть заранее в специализированных программах рассчитываются силы и моменты в зависимости от скорости автомобиля и от ветра. И дальше закладываются в специальные таблицы, которые уже по упрощенной математике быстро моделируются в движке.

Третий важный элемент это модель подвески автомобиля, через которую силы воздействующие на автомобиль передаются на колеса. Ну и наконец самая главная и самая сложная модель в любом автомобильном симуляторе это модель колеса или так называемая шинная модель.

На колесо от автомобиля через подвеску воздействует сила. Обычно разделяют на три проекции. Вертикальная PZ, продольная PX и боковая PY. Также на колесо от двигателя через трансмиссию приходит момент, который заставляет это колесо прокручиваться.

Соответственно, существует и обратный тормозящий момент, который создается либо за счет центрения внутри колеса, либо за счет зажатых тормозов. При взаимодействии колеса с дорогой формируется так называемое пятно контакта. В пятно контакта создаются реакции, которые как раз и заставляют автомобиль двигаться.

в продольном и боковом направлении. Существует несколько физических модель шины, однако самая распространенная и популярная это так называемая магическая-эмпирическая формула Пасейки, которая связывает между собой продольную и боковую составляющие силы и связывает всё это с углом поворота колеса и проскальзыванием колеса. Например, вид продольной реакции в зависимости от проскальзывания показан на графике. Очевидно, что пятно контакта – это не точка. Для более точного воспроизведения сил, которые действуют внутри пятна контакта, необходимо учитывать его форму. Самый простой вариант – это разделение шины на секции и расчет сил и реакции отдельно для каждой секции.
Нам есть еще много, о чем вам рассказать. Например, физика трансмиссии, физика шинной модели, аэродинамика. Огромное количество аспектов, связанных с нюансами разработки ядра движка.
Если вам было интересно, оставайтесь с нами. Спасибо за внимание.