Hacker News Digest

07 октября 2026 г. в 12:30 • patkerr.co.uk • ⭐ 592 • 💬 113

Original • HN

#gfa-basic#grand-theft-auto#javascript#physics-simulation#rigid-body-dynamics#vehicle-dynamics

2D Vehicles

В 1996 году автор создал простую 2D физическую симуляцию на Atari ST в GFA BASIC, которая позже стала основой системы транспорта в Grand Theft Auto. Проект начался с модели «кирпича», затем был дополнен элементами, напоминающими игру Thrust (1986), и наконец превратился в реалистичную модель автомобиля. Ключевым нововведением стало использование полной жёсткой-телесной динамики с учётом крутящих моментов — редкость для игр того времени, где обычно применяли упрощённую точечную физику (F = ma) с «костылями» для вращения.

Сверху ядра физики был добавлен упрощённый model шин: для каждого колеса рассчитывались продольное и боковое сопротивление пропорционально скорости, без учёта реального сцепления или пределов силы. Руление меняло направление передних колёс, а ручной тормоз увеличивал сопротивление задних колёс и снижал боковое сцепление. Эта модель, хотя и физически неточная, давала ощутимую и управляемую реакцию на ввод. В recreated версии на JavaScript (Motion Lab) доступны три режима: Car, Ship и Brick, с переключением камеры (Z/X), гравитации (G) и барьеров (B). Симуляция работает с фиксированным шагом, разделяет ввод, физику и рендеринг, что делает её прозрачной и обучающей. Автор подчеркивает, что проект создан независимо и не связан с Rockstar или Take-Two.