То, что вы ищете, это NavMesh или алгоритмы поиска пути. Вы можете написать свой собственный алгоритм A *, это не сложно, и вы изучите кодирование. Затем вы определяете места, где машина может путешествовать или нет;вам, вероятно, придется делать это вручную, если вы не напишите скрипт, который может извлечь эту информацию из карты. Затем вы решаете, используя свой алгоритм поиска пути и следуя узлам.
Есть много объяснений онлайн , которые могут помочь Вы понимаете . Существуют и другие алгоритмы поиска пути, поэтому проверьте их.
Что касается направления туда, куда он идет, вы просто получите направление, в котором он движется, а затем поверните вектор вперед, чтобы соответствовать этому направлению.
Кстати, это не ваш сайт для решения домашних заданий. Вы должны проверить сообщества разработчиков игр, если вы хотите получить базовое объяснение или поиск в Интернете, там буквально сотни ресурсов.