Допустим, у вас есть сплайновый гоночный AI. Предположим, он уже может справиться с основами торможения и рулевого управления по трассе.
Как бы вы структурировали и внедрили способы предотвращения столкновений, обгонов, составления, блокировки и других действий, чтобы ваши машины оставались конкурентоспособными, но участвовали в интересных гонках?
Ссылки на документы / реализации будут отличными.
Ответы:
Вы видели поведение рулевого управления для автономных персонажей ? Я бы рассмотрел алгоритм « CrowdPathFollowing» , чтобы оставаться на трассе и избегать столкновений. Вы могли бы быть в состоянии смешать поведение «Flow Field Follow» для черчения, прохождения и блокирования - заставить поле потока следовать прошлому и спроецированному пути игрока, но разделить его текущее местоположение.
Это должно привести к тому, что ИИ будет следовать непосредственно за ним и двигаться прямо вперед, чтобы блокировать, но при этом поощрять чистые пасы.
источник
Частично об этом говорилось на конференции AI Game Dev в Париже в этом году. Вы можете найти слайды и резюме здесь:
http://aigamedev.com/open/coverage/paris10-report/#session9
источник
Anti-Pattern: противники приспосабливаются к своей скорости
К сожалению, я не могу дать вам шаблоны, но я бы хотел назвать анти-шаблон. Пожалуйста, не пытайтесь адаптировать скорость драйверов ИИ к человеческим игрокам. Идея заключается в том, чтобы создать честные гоночные условия как для любителей, так и для профессионалов, и отказаться от необходимости нескольких уровней сложности (и их реализации).
Однако то, что звучит хорошо на бумаге, на практике оказывается ужасным, и серия MotoGP с треском провалилась при реализации этого поведения. Это привело к тому, что противники ехали со скоростью 5 миль / ч, когда вы остановились на пару секунд, и невозможность определить, улучшились ли вы в игре (очень плохие отзывы)
источник