суббота, 7 февраля 2009 г.

ИИ: Езда по контрольным точкам

Начал работать над перемещением ботов. Pеализовал два типа перемещения - танковый стиль езды, и колёсный стиль езды. Различаются они в основном способом разворота. Например танковый может на месте разворачиваться, а колёсный - нет. Ну и ещё парой-тройкой коэффициентов.

Вот многие говорят - чего сложного, настроишь как в жизни физику и всё. А вот фиг - или мордой начинает вилять, или опрокидывается или ещё чего... А ведь сейчас он ездит всего лишь по ровной гладкой плоскости )  К тому же для удобства потребовались определённые константные значения для параметров робота (как то максимальная скорость, максимальный крутящий момент), не зависящие от суммарной массы робота.

Поэтому приходится не физичные хаки вводить – гасить крутящие моменты, выравнивать направление скорости по направлению робота (помните как в первой демке робота всё время уводило вправо?), применять специальные разгоняющие импульсы и т.д. и т.п.

Зато теперь робот ездит прямо, не виляет, не переворачивается… и в тоже время выглядит весьма правдоподобно: его заносит на поворотах, если на полном ходу врезается в препятствие (бочка) – его закручивает, однако он выравнивает направление и продолжает ехать в нужную сторону. Вообщем для ботов сгодится :)

А вот для игрока не знаю… возможно для более комфортного управления, придётся написать другой код…


Танковый стиль езды: 


Колёсный стиль езды: 


Комментариев нет: