Разработчик GTA воссоздал модель вождения из первой части игры к её 30-летию — прототип работает в браузере

Игроки смогут оценить разные версии симуляции, созданной много лет назад.

Недавно экс-программист оригинальной Grand Theft Auto вновь вспомнил про культовую игру и решил рассказать о том, как она была устроена изнутри.

Патрик Керр (Patrick Kerr) написал симуляцию 2D-физики в один из выходных в конце августа 1996. Впоследствии именно эта симуляция стала основой системы транспорта в игре Grand Theft Auto:

Всё началось с небольшого каркасного демо, написанного на GFA BASIC на моём домашнем компьютере Atari ST. Позже оно было портировано на C для использования непосредственно в игре. К 30-летию этой разработки я воссоздал её на JavaScript — в немного более красивой, «отремастированной» форме — чтобы все желающие могли посмотреть на неё или поиграться с ней.

В рамках данной симуляции игрокам предлагается несколько режимов: «машина» (1), технически более простой «космический корабль» или «корабль» (2); а также «кирпич» (3). Можно установить барьер по краям игрового поля или сделать его бесшовным.

Источник изображения: Сайт patkerr
Источник изображения: Сайт patkerr
Источник изображения: Сайт patkerr
Источник изображения: Rockstar Games

Изначально, рассказывает Патрик, симуляция чем-то напоминала режим «кирпича», представленный в этой браузерной версии. Затем он внедрил несколько улучшений и получилось то, что игроки теперь могут увидеть в режиме «корабль» — такая версия физики «намеренно напоминает классическую игру Thrust 1986 года».

После этого Патрик внедрил элементы, необходимые для того, чтобы симуляция стала немного больше похожа на ту, что доступна в режиме «машина».

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

Под этим разработчик имеет ввиду известную формулу F = m * a (Сила, которая действует на тело = Масса умноженная на Ускорение, получаемое телом под действием силы).

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

Помимо этого, поверх базового уровня, разработчик добавил слой симуляции транспорта, основанный на «простой, приблизительной и технически некорректной» модели поведения шин:

По сути, это была моя достаточно обоснованная догадка. Хотя я понимал, что она не вполне соответствует реальной физике, для моих тогдашних целей она, тем не менее, казалась «достаточно хорошей».

Прототип системы вождения «2D Vehicles» из первой Grand Theft Auto можно оценить по следующей ссылке.