Бывший технический директор Rockstar North Оббе Вермей продолжает делиться деталями разработки игр франшизы Grand Theft Auto. На этот раз он объяснил одну из самых необычных загадок GTA: San Andreas — падающие самолеты.
По словам Вермея, игра то и дело подгружала рядом с игроком воздушные суда небольших габаритов, вроде бипланов. Те должны были проноситься мимо Си Джея на бреющем полете. Перед созданием самолета код сканировал несколько линий впереди машины, чтобы убедиться, что на пути нет препятствий.
Полный анализ занимал много времени, поэтому Вермей учитывал самый минимум — корпус и кончики крыльев. Из-за этого код мог «не видеть» тонкие объекты (вроде радиовышек или тросов подвесного моста), и самолет врезался в них на полном ходу.
Еще одной причиной была особенность генерации воздушных судов. При появлении недалеко от игрока они не успевали набрать скорость, достаточную для подъемной силы, поэтому задевали здания или падали на землю.
Наконец, случалось, что некоторые объекты загружались на локацию уже после появления самолета. Код «прокладывал курс» воздушного судна по всем правилам, убеждаясь в отсутствии помех, но обсчет столкновения какого-нибудь здания еще не был завершен. В итоге самолет летел прямо в стену, «считая», что небо впереди — чистое.
После подробностей от Вермея моддер с ником Silent обратил внимание разработчика на то, что проблемы с обнаружением столкновений случались у самолетов и просто так — из-за бага в коде. Проверка выдавала ложный результат, что курс правильный, и машина таранила объект. Сам Вермей удивился, что был не в курсе такой ошибки.
Бывший техдиректор Rockstar знал, что самолеты в San Andreas ведут себя некорректно и одно время думал вообще убрать бреющие пролеты около героя. В